linux/net/mac80211/tests/util.h
Benjamin Berg 11cc69abb0 wifi: mac80211: tests: add utility to create sdata skeleton
Some functions that should be tested may expect an sdata object that is
configured to a basic degree. Add setup code to create such an object
for use by tests.

Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20250101070249.12eeefd3c98b.I6e8c2b8374d4305f16675524ca30621e089b6fb0@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2025-01-13 15:26:45 +01:00

36 lines
833 B
C

/* 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 */