[PATCH 0/4] drm/amd/display: Update Display Core unit tests
Joao Paulo Pereira da Silva
jppaulo11 at usp.br
Sat Apr 20 18:48:15 UTC 2024
Hey, I'm interested in contributing for display tests from this patch-set.
I've noticed potential updates related to both refactoring and optimization.
This patch-set applies these suggestions.
[WHY]
1. The single test suite in the file
test/kunit/dc/dml/calcs/bw_fixed_test.c, which tests some static
functions defined in the dc/basics/bpw_fixed.c, is not being run.
According to kunit documentation
(https://www.kernel.org/doc/html/latest/dev-tools/kunit/usage.html#testing-static-functions),
there are two strategies for testing
static functions, but none of them seem to be configured. Additionally,
it appears that the Config DCE_KUNIT_TEST should be associated with this
test, since it was introduced in the same patch of the test
(https://lore.kernel.org/amd-gfx/20240222155811.44096-3-Rodrigo.Siqueira@amd.com/),
but it is not being used anywhere in the display driver.
2. Also, according to the documentation, "The display/tests folder replicates
the folder hierarchy of the display folder". However, note that this test file
(test/kunit/dc/dml/calcs/bw_fixed_test.c) has a conflicting path with the file
that is being tested (dc/basics/bw_fixed.c).
3. Config Names and Helps are a bit misleading and don't follow a strict
pattern. For example, the config DML_KUNIT_TEST indicates that it is used
to activate tests for the Display Core Engine, but instead activates tests
for the Display Core Next. Also, note the different name patterns in
DML_KUNIT_TEST and AMD_DC_BASICS_KUNIT_TEST.
4. The test suite dcn21_update_bw_bounding_box_test_suite configures an init
function that doesn't need to be executed before every test, but only once
before the suite runs.
5. There are some not updated info in the Documentation, such as the
recommended command to run the tests:
$ ./tools/testing/kunit/kunit.py run --arch=x86_64 \
--kunitconfig=drivers/gpu/drm/amd/display/tests
(it doesn't work since there is no .kunitconfig in
drivers/gpu/drm/amd/display/tests)
[HOW]
1. Revise Config names and Help blocks.
2. Change the path of the test file bw_fixed_test from
test/kunit/dc/dml/calcs/bw_fixed_test.c to test/kunit/dc/basics/bw_fixed_test.c
to make it consistent with the Documentation and the other display driver
tests. Make this same test file run by importing it conditionally in the file
dc/basics/bw_fixed_test.c.
3. Turn the test init function of the suite
dcn21_update_bw_bounding_box_test_suite into a suite init.
4. Update Documentation
Joao Paulo Pereira da Silva (4):
drm/amd/display: Refactor AMD display KUnit tests configs
drm/amd/display/test: Fix kunit test that is not running
drm/amd/display/test: Optimize kunit test suite
dml_dcn20_fpu_dcn21_update_bw_bounding_box_test
Documentation/gpu: Update AMD Display Core Unit Test documentation
.../gpu/amdgpu/display/display-test.rst | 20 ++++++------
drivers/gpu/drm/amd/display/Kconfig | 31 ++++++-------------
.../gpu/drm/amd/display/dc/basics/bw_fixed.c | 3 ++
drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 2 +-
.../dc/dml/dcn20/display_mode_vba_20.c | 2 +-
.../dc/dml/dcn20/display_rq_dlg_calc_20.c | 2 +-
.../drm/amd/display/test/kunit/.kunitconfig | 7 ++---
.../gpu/drm/amd/display/test/kunit/Makefile | 4 +--
.../dc/{dml/calcs => basics}/bw_fixed_test.c | 0
.../test/kunit/dc/dml/dcn20/dcn20_fpu_test.c | 6 ++--
10 files changed, 32 insertions(+), 45 deletions(-)
rename drivers/gpu/drm/amd/display/test/kunit/dc/{dml/calcs => basics}/bw_fixed_test.c (100%)
--
2.44.0
More information about the amd-gfx
mailing list