[RFC,v2,6/8] drm/i915: add perf selftests to KUnit
Commit Message
Now that i915 KUnit has PCI support, add perf tests as well.
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
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@kernel.org/
drivers/gpu/drm/i915/selftests/i915_kunit.c | 34 ++++++++++++++++++++-
1 file changed, 33 insertions(+), 1 deletion(-)
@@ -202,6 +202,30 @@ static struct kunit_case i915_live_tests[] = {
};
#undef selftest
+/*
+ * Suite 3: live selftests
+ */
+
+#define selftest(x, __y) int __y(struct drm_i915_private *i915);
+#include "i915_perf_selftests.h"
+#undef selftest
+
+/* Create selftest functions */
+#define selftest(__x, __y) \
+ static void perf_##__x(struct kunit *test) { \
+ run_pci_test(test, __y); \
+ }
+#include "i915_perf_selftests.h"
+#undef selftest
+
+/* Fill tests array */
+#define selftest(__x, __y) KUNIT_CASE(perf_##__x),
+static struct kunit_case i915_perf_tests[] = {
+#include "i915_perf_selftests.h"
+ {}
+};
+#undef selftest
+
/*
* Declare test suites
*/
@@ -219,10 +243,18 @@ static struct kunit_suite i915_test_suites[] = {
.suite_init = i915_pci_init_suite,
.suite_exit = i915_pci_exit_suite,
},
+ {
+ .name = "i915 perf selftests",
+ .test_cases = i915_perf_tests,
+ .init = initialize_i915_selftests,
+ .suite_init = i915_pci_init_suite,
+ .suite_exit = i915_pci_exit_suite,
+ },
};
kunit_test_suites(&i915_test_suites[0],
- &i915_test_suites[1]);
+ &i915_test_suites[1],
+ &i915_test_suites[2]);
MODULE_LICENSE("GPL v2");
MODULE_IMPORT_NS(I915_SELFTEST);