diff options
author | Martin Peres <martin.peres@mupuf.org> | 2021-02-16 08:37:46 +0200 |
---|---|---|
committer | Martin Peres <martin.peres@mupuf.org> | 2021-02-18 15:08:05 +0200 |
commit | 915c3563ee802166fff50774373a54eae101d268 (patch) | |
tree | 5e75606f6ebe9a9f473a4ddf066be816f27d803b | |
parent | 0bcbbf687e2f0178c67c15b0c5a56bcd891564c9 (diff) |
amdgpu/basic: move amdgpu_query_info_test to its own file
This will soon be followed by more amd_query_info tests, and the basic
file is already big-enough.
v2:
- add test and subtest descriptions (Arek)
- add the new file to autotools (Petri)
v3:
- fix compilation using autotools (Petri)
Signed-off-by: Martin Peres <martin.peres@mupuf.org>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
-rw-r--r-- | tests/Makefile.am | 2 | ||||
-rw-r--r-- | tests/Makefile.sources | 1 | ||||
-rw-r--r-- | tests/amdgpu/amd_basic.c | 17 | ||||
-rw-r--r-- | tests/amdgpu/amd_info.c | 74 | ||||
-rw-r--r-- | tests/amdgpu/meson.build | 1 |
5 files changed, 78 insertions, 17 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am index 33ec61f7d..a6c807d8b 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -147,5 +147,7 @@ amdgpu_amd_cs_nop_CFLAGS = $(AM_CFLAGS) $(DRM_AMDGPU_CFLAGS) amdgpu_amd_cs_nop_LDADD = $(LDADD) $(DRM_AMDGPU_LIBS) amdgpu_amd_prime_CFLAGS = $(AM_CFLAGS) $(DRM_AMDGPU_CFLAGS) amdgpu_amd_prime_LDADD = $(LDADD) $(DRM_AMDGPU_LIBS) +amdgpu_amd_info_CFLAGS = $(AM_CFLAGS) $(DRM_AMDGPU_CFLAGS) +amdgpu_amd_info_LDADD = $(LDADD) $(DRM_AMDGPU_LIBS) endif diff --git a/tests/Makefile.sources b/tests/Makefile.sources index 3f663fe7e..4f24fb3a1 100644 --- a/tests/Makefile.sources +++ b/tests/Makefile.sources @@ -9,6 +9,7 @@ AMDGPU_TESTS = \ amdgpu/amd_bypass \ amdgpu/amd_color \ amdgpu/amd_cs_nop \ + amdgpu/amd_info \ amdgpu/amd_prime \ amdgpu/amd_abm \ $(NULL) diff --git a/tests/amdgpu/amd_basic.c b/tests/amdgpu/amd_basic.c index bf626ece8..6c9609b97 100644 --- a/tests/amdgpu/amd_basic.c +++ b/tests/amdgpu/amd_basic.c @@ -176,20 +176,6 @@ static void amdgpu_command_submission_copy_linear_helper(unsigned ip_type); # define PACKET3_DMA_DATA_CMD_DAIC (1 << 29) # define PACKET3_DMA_DATA_CMD_RAW_WAIT (1 << 30) -static void amdgpu_query_info_test(void) -{ - struct amdgpu_gpu_info gpu_info = {}; - uint32_t version, feature; - int r; - - r = amdgpu_query_gpu_info(device, &gpu_info); - igt_assert_eq(r, 0); - - r = amdgpu_query_firmware_version(device, AMDGPU_INFO_FW_VCE, 0, - 0, &version, &feature); - igt_assert_eq(r, 0); -} - static amdgpu_bo_handle gpu_mem_alloc(amdgpu_device_handle device_handle, uint64_t size, uint64_t alignment, @@ -1397,9 +1383,6 @@ igt_main major, minor); } - igt_subtest("query-info") - amdgpu_query_info_test(); - igt_subtest("memory-alloc") amdgpu_memory_alloc(); diff --git a/tests/amdgpu/amd_info.c b/tests/amdgpu/amd_info.c new file mode 100644 index 000000000..6764e6400 --- /dev/null +++ b/tests/amdgpu/amd_info.c @@ -0,0 +1,74 @@ +/* + * Copyright 2014 Advanced Micro Devices, Inc. + * Copyright 2021 Valve Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +#include "config.h" + +#include "igt.h" + +#include <amdgpu.h> +#include <amdgpu_drm.h> + +static amdgpu_device_handle dev; + +static void query_firmware_version_test(void) +{ + struct amdgpu_gpu_info gpu_info = {}; + uint32_t version, feature; + int r; + + r = amdgpu_query_gpu_info(dev, &gpu_info); + igt_assert_eq(r, 0); + + r = amdgpu_query_firmware_version(dev, AMDGPU_INFO_FW_VCE, 0, 0, + &version, &feature); + igt_assert_eq(r, 0); +} + +IGT_TEST_DESCRIPTION("Test the consistency of the data provided through the " + "DRM_AMDGPU_INFO IOCTL"); +igt_main +{ + int fd = -1; + + igt_fixture { + uint32_t major, minor; + int err; + + fd = drm_open_driver(DRIVER_AMDGPU); + + err = amdgpu_device_initialize(fd, &major, &minor, &dev); + igt_require(err == 0); + + igt_info("Initialized amdgpu, driver version %d.%d\n", + major, minor); + } + + igt_describe("Make sure we can retrieve the firmware version"); + igt_subtest("query-firmware-version") + query_firmware_version_test(); + + igt_fixture { + amdgpu_device_deinitialize(dev); + close(fd); + } +} diff --git a/tests/amdgpu/meson.build b/tests/amdgpu/meson.build index b79822919..b92aa22b7 100644 --- a/tests/amdgpu/meson.build +++ b/tests/amdgpu/meson.build @@ -7,6 +7,7 @@ if libdrm_amdgpu.found() 'amd_bypass', 'amd_color', 'amd_cs_nop', + 'amd_info', 'amd_prime', ] amdgpu_deps += libdrm_amdgpu |