diff options
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/tests')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/tests/Makefile | 2 | ||||
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/tests/hcmd.c | 38 | ||||
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/tests/scan.c | 110 |
3 files changed, 39 insertions, 111 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tests/Makefile b/drivers/net/wireless/intel/iwlwifi/mvm/tests/Makefile index 6bd56a28cffd..bb33f4a06f1c 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/tests/Makefile +++ b/drivers/net/wireless/intel/iwlwifi/mvm/tests/Makefile @@ -1,3 +1,3 @@ -iwlmvm-tests-y += module.o links.o scan.o +iwlmvm-tests-y += module.o links.o hcmd.o obj-$(CONFIG_IWLWIFI_KUNIT_TESTS) += iwlmvm-tests.o diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tests/hcmd.c b/drivers/net/wireless/intel/iwlwifi/mvm/tests/hcmd.c new file mode 100644 index 000000000000..1fee0320c756 --- /dev/null +++ b/drivers/net/wireless/intel/iwlwifi/mvm/tests/hcmd.c @@ -0,0 +1,38 @@ +// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause +/* + * KUnit tests for channel helper functions + * + * Copyright (C) 2025 Intel Corporation + */ +#include <kunit/test.h> + +#include <iwl-trans.h> +#include "../mvm.h" + +MODULE_IMPORT_NS("EXPORTED_FOR_KUNIT_TESTING"); + +static void test_hcmd_names_sorted(struct kunit *test) +{ + for (int i = 0; i < iwl_mvm_groups_size; i++) { + const struct iwl_hcmd_arr *arr = &iwl_mvm_groups[i]; + + if (!arr->arr) + continue; + + for (int j = 0; j < arr->size - 1; j++) + KUNIT_EXPECT_LE(test, arr->arr[j].cmd_id, + arr->arr[j + 1].cmd_id); + } +} + +static struct kunit_case hcmd_names_cases[] = { + KUNIT_CASE(test_hcmd_names_sorted), + {}, +}; + +static struct kunit_suite hcmd_names = { + .name = "iwlmvm-hcmd-names", + .test_cases = hcmd_names_cases, +}; + +kunit_test_suite(hcmd_names); diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/tests/scan.c b/drivers/net/wireless/intel/iwlwifi/mvm/tests/scan.c deleted file mode 100644 index 7a3275199ace..000000000000 --- a/drivers/net/wireless/intel/iwlwifi/mvm/tests/scan.c +++ /dev/null @@ -1,110 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-only -/* - * KUnit tests for channel helper functions - * - * Copyright (C) 2024 Intel Corporation - */ -#include <net/mac80211.h> -#include "../mvm.h" -#include <kunit/test.h> - -MODULE_IMPORT_NS("EXPORTED_FOR_KUNIT_TESTING"); - -static const struct acs_average_db_case { - const char *desc; - u8 neg_dbm[22]; - s8 result; -} acs_average_db_cases[] = { - { - .desc = "Smallest possible value, all filled", - .neg_dbm = { - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 128, 128 - }, - .result = -128, - }, - { - .desc = "Biggest possible value, all filled", - .neg_dbm = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, - }, - .result = 0, - }, - { - .desc = "Smallest possible value, partial filled", - .neg_dbm = { - 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, - 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, - }, - .result = -128, - }, - { - .desc = "Biggest possible value, partial filled", - .neg_dbm = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, - }, - .result = 0, - }, - { - .desc = "Adding -80dBm to -75dBm until it is still rounded to -79dBm", - .neg_dbm = { - 75, 80, 80, 80, 80, 80, 80, 80, 80, 80, - 80, 80, 80, 80, 80, 80, 80, 0xff, 0xff, 0xff, - 0xff, 0xff, - }, - .result = -79, - }, - { - .desc = "Adding -80dBm to -75dBm until it is just rounded to -80dBm", - .neg_dbm = { - 75, 80, 80, 80, 80, 80, 80, 80, 80, 80, - 80, 80, 80, 80, 80, 80, 80, 80, 0xff, 0xff, - 0xff, 0xff, - }, - .result = -80, - }, -}; - -KUNIT_ARRAY_PARAM_DESC(acs_average_db, acs_average_db_cases, desc) - -static void test_acs_average_db(struct kunit *test) -{ - const struct acs_average_db_case *params = test->param_value; - struct iwl_umac_scan_channel_survey_notif notif; - int i; - - /* Test the values in the given order */ - for (i = 0; i < ARRAY_SIZE(params->neg_dbm); i++) - notif.noise[i] = params->neg_dbm[i]; - KUNIT_ASSERT_EQ(test, - iwl_mvm_average_dbm_values(¬if), - params->result); - - /* Test in reverse order */ - for (i = 0; i < ARRAY_SIZE(params->neg_dbm); i++) - notif.noise[ARRAY_SIZE(params->neg_dbm) - i - 1] = - params->neg_dbm[i]; - KUNIT_ASSERT_EQ(test, - iwl_mvm_average_dbm_values(¬if), - params->result); -} - -static struct kunit_case acs_average_db_case[] = { - KUNIT_CASE_PARAM(test_acs_average_db, acs_average_db_gen_params), - {} -}; - -static struct kunit_suite acs_average_db = { - .name = "iwlmvm-acs-average-db", - .test_cases = acs_average_db_case, -}; - -kunit_test_suite(acs_average_db); |