Commit e97701a0 authored by Michal Wajdeczko's avatar Michal Wajdeczko
Browse files

drm/xe/kunit: Simplify xe_mocs live tests code layout



The test case logic is implemented by the functions compiled as
part of the core Xe driver module and then exported to build and
register the test suite in the live test module.

But we don't need to export individual test case functions, we may
just export the entire test suite. And we don't need to register
this test suite in a separate file, it can be done in the main
file of the live test module.

Signed-off-by: default avatarMichal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240708111210.1154-5-michal.wajdeczko@intel.com
parent 02373681
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -2,8 +2,7 @@

# "live" kunit tests
obj-$(CONFIG_DRM_XE_KUNIT_TEST) += xe_live_test.o
xe_live_test-y = xe_live_test_mod.o \
	xe_mocs_test.o
xe_live_test-y = xe_live_test_mod.o

# Normal kunit tests
obj-$(CONFIG_DRM_XE_KUNIT_TEST) += xe_test.o
+2 −0
Original line number Diff line number Diff line
@@ -8,10 +8,12 @@
extern struct kunit_suite xe_bo_test_suite;
extern struct kunit_suite xe_dma_buf_test_suite;
extern struct kunit_suite xe_migrate_test_suite;
extern struct kunit_suite xe_mocs_test_suite;

kunit_test_suite(xe_bo_test_suite);
kunit_test_suite(xe_dma_buf_test_suite);
kunit_test_suite(xe_migrate_test_suite);
kunit_test_suite(xe_mocs_test_suite);

MODULE_AUTHOR("Intel Corporation");
MODULE_LICENSE("GPL");
+15 −5
Original line number Diff line number Diff line
@@ -6,7 +6,6 @@
#include <kunit/test.h>
#include <kunit/visibility.h>

#include "tests/xe_mocs_test.h"
#include "tests/xe_pci_test.h"
#include "tests/xe_test.h"

@@ -134,11 +133,10 @@ static int mocs_kernel_test_run_device(struct xe_device *xe)
	return 0;
}

void xe_live_mocs_kernel_kunit(struct kunit *test)
static void xe_live_mocs_kernel_kunit(struct kunit *test)
{
	xe_call_for_each_device(mocs_kernel_test_run_device);
}
EXPORT_SYMBOL_IF_KUNIT(xe_live_mocs_kernel_kunit);

static int mocs_reset_test_run_device(struct xe_device *xe)
{
@@ -175,8 +173,20 @@ static int mocs_reset_test_run_device(struct xe_device *xe)
	return 0;
}

void xe_live_mocs_reset_kunit(struct kunit *test)
static void xe_live_mocs_reset_kunit(struct kunit *test)
{
	xe_call_for_each_device(mocs_reset_test_run_device);
}
EXPORT_SYMBOL_IF_KUNIT(xe_live_mocs_reset_kunit);

static struct kunit_case xe_mocs_tests[] = {
	KUNIT_CASE(xe_live_mocs_kernel_kunit),
	KUNIT_CASE(xe_live_mocs_reset_kunit),
	{}
};

VISIBLE_IF_KUNIT
struct kunit_suite xe_mocs_test_suite = {
	.name = "xe_mocs",
	.test_cases = xe_mocs_tests,
};
EXPORT_SYMBOL_IF_KUNIT(xe_mocs_test_suite);
+0 −21
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright © 2022 Intel Corporation
 */

#include "xe_mocs_test.h"

#include <kunit/test.h>

static struct kunit_case xe_mocs_tests[] = {
	KUNIT_CASE(xe_live_mocs_kernel_kunit),
	KUNIT_CASE(xe_live_mocs_reset_kunit),
	{}
};

static struct kunit_suite xe_mocs_test_suite = {
	.name = "xe_mocs",
	.test_cases = xe_mocs_tests,
};

kunit_test_suite(xe_mocs_test_suite);
+0 −14
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0 AND MIT */
/*
 * Copyright © 2023 Intel Corporation
 */

#ifndef _XE_MOCS_TEST_H_
#define _XE_MOCS_TEST_H_

struct kunit;

void xe_live_mocs_kernel_kunit(struct kunit *test);
void xe_live_mocs_reset_kunit(struct kunit *test);

#endif