1 // SPDX-License-Identifier: MIT
2 
3 /*
4  * Copyright © 2019 Intel Corporation
5  */
6 
7 #ifndef __SELFTEST_H__
8 #define __SELFTEST_H__
9 
10 #include <linux/compiler.h>
11 
12 #define selftest(name, func) int func(void);
13 #include "selftests.h"
14 #undef selftest
15 
16 struct subtest {
17 	int (*func)(void *data);
18 	const char *name;
19 };
20 
21 int __subtests(const char *caller,
22 	       const struct subtest *st,
23 	       int count,
24 	       void *data);
25 #define subtests(T, data) \
26 	__subtests(__func__, T, ARRAY_SIZE(T), data)
27 
28 #define SUBTEST(x) { x, #x }
29 
30 #endif /* __SELFTEST_H__ */
31