Now that i915 KUnit has PCI support, add live tests as well. NOTE: currently, some tests are failing when excecuting via KUnit. I'll do a further investigation to check why, and if this patch can be safely merged or not. Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> --- To avoid mailbombing on a large number of people, only mailing lists were C/C on the cover. See [PATCH RFC v2 0/8] at: https://lore.kernel.org/all/cover.1667486144.git.mchehab@xxxxxxxxxx/ drivers/gpu/drm/i915/selftests/i915_kunit.c | 35 ++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/selftests/i915_kunit.c b/drivers/gpu/drm/i915/selftests/i915_kunit.c index 430610864f6e..f5281c866d75 100644 --- a/drivers/gpu/drm/i915/selftests/i915_kunit.c +++ b/drivers/gpu/drm/i915/selftests/i915_kunit.c @@ -177,6 +177,31 @@ static struct kunit_case i915_mock_tests[] = { }; #undef selftest +/* + * Suite 2: live selftests + */ + +/* Declare selftest functions */ +#define selftest(x, __y) int __y(struct drm_i915_private *i915); +#include "i915_live_selftests.h" +#undef selftest + +/* Create selftest functions */ +#define selftest(__x, __y) \ + static void live_##__x(struct kunit *test) { \ + run_pci_test(test, __y); \ + } +#include "i915_live_selftests.h" +#undef selftest + +/* Fill tests array */ +#define selftest(__x, __y) KUNIT_CASE(live_##__x), +static struct kunit_case i915_live_tests[] = { +#include "i915_live_selftests.h" + {} +}; +#undef selftest + /* * Declare test suites */ @@ -187,9 +212,17 @@ static struct kunit_suite i915_test_suites[] = { .test_cases = i915_mock_tests, .init = initialize_i915_selftests, }, + { + .name = "i915 live selftests", + .test_cases = i915_live_tests, + .init = initialize_i915_selftests, + .suite_init = i915_pci_init_suite, + .suite_exit = i915_pci_exit_suite, + }, }; -kunit_test_suites(i915_test_suites); +kunit_test_suites(&i915_test_suites[0], + &i915_test_suites[1]); MODULE_LICENSE("GPL v2"); MODULE_IMPORT_NS(I915_SELFTEST); -- 2.38.1