summaryrefslogtreecommitdiff
path: root/net/mac80211/tests/util.h
blob: 6615880c123f4eae3b07ccecd8e2a2a93d793879 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Utilities for mac80211 unit testing
 *
 * Copyright (C) 2024 Intel Corporation
 */
#ifndef __MAC80211_UTILS_H
#define __MAC80211_UTILS_H

#include "../ieee80211_i.h"

struct t_sdata {
	struct ieee80211_sub_if_data *sdata;
	struct wiphy *wiphy;
	struct ieee80211_local local;

	void *ctx;

	struct ieee80211_supported_band band_2ghz;
	struct ieee80211_supported_band band_5ghz;
};

#define T_SDATA(test) ({						\
		struct t_sdata *__t_sdata =				\
			kunit_alloc_resource(test, t_sdata_init,	\
					     t_sdata_exit,		\
					     GFP_KERNEL, NULL);		\
									\
		KUNIT_ASSERT_NOT_NULL(test, __t_sdata);			\
		__t_sdata;						\
	})

int t_sdata_init(struct kunit_resource *resource, void *data);
void t_sdata_exit(struct kunit_resource *resource);

#endif /* __MAC80211_UTILS_H */