linux/net/wireless
Johannes Berg 8f251a0a15 wifi: cfg80211: simplify cfg80211_chandef_compatible()
Simplify cfg80211_chandef_compatible() a bit by switching
c1 and c2 around so that c1 is always the narrower one
(once they're not identical or narrow/S1G). Then we can
just check the various primary channels and exit with the
wider one (c2), or NULL.

Also refactor the primary 40/80/160 function to not have
all the calculations hard-coded, and use a wrapper around
it to check primary 40/80/160 compatibility.

While at it, add some kunit tests for this functionality.

Also expose the new cfg80211_chandef_primary_freq() to
drivers, mac80211 will use it.

Link: https://msgid.link/20240129194108.be3e6eccaba3.I8399c2ff1435d7378e5837794cb5aa6dd2ee1416@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2024-02-08 13:07:38 +01:00
..
certs wifi: cfg80211: fix certs build to not depend on file order 2023-12-14 09:11:51 +01:00
tests wifi: cfg80211: simplify cfg80211_chandef_compatible() 2024-02-08 13:07:38 +01:00
.gitignore
ap.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
chan.c wifi: cfg80211: simplify cfg80211_chandef_compatible() 2024-02-08 13:07:38 +01:00
core.c wifi: cfg80211: fix wiphy delayed work queueing 2024-01-26 10:43:32 +01:00
core.h wifi: cfg80211: add a kunit test for 6 GHz colocated AP parsing 2024-02-02 14:15:11 +01:00
debugfs.c wifi: cfg80211: add locked debugfs wrappers 2023-11-27 11:24:58 +01:00
debugfs.h
ethtool.c
ibss.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
Kconfig wifi: cfg80211/mac80211: remove dependency on non-existing option 2024-01-18 14:50:01 +01:00
lib80211.c
lib80211_crypt_ccmp.c
lib80211_crypt_tkip.c wifi: lib80211: remove unused variables iv32 and iv16 2023-09-13 12:33:58 +02:00
lib80211_crypt_wep.c
Makefile wifi: cfg80211: sort certificates in build 2023-12-14 12:04:21 +01:00
mesh.c wifi: cfg80211: remove scan_width support 2023-09-13 11:10:50 +02:00
mlme.c wifi: cfg80211: validate MLO connections better 2024-01-26 09:39:49 +01:00
nl80211.c wifi: nl80211: move WPA version validation to policy 2024-02-02 14:20:43 +01:00
nl80211.h wifi: cfg80211: make RX assoc data const 2023-12-06 11:50:28 +01:00
ocb.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
of.c
pmsr.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
radiotap.c
rdev-ops.h wifi: cfg80211: Replace ENOTSUPP with EOPNOTSUPP 2023-12-12 10:37:01 +01:00
reg.c wifi: cfg80211: handle UHB AP and STA power type 2023-12-21 20:35:14 +01:00
reg.h wifi: cfg80211: Schedule regulatory check on BSS STA channel change 2023-12-21 20:35:14 +01:00
scan.c Merge wireless into wireless-next 2024-02-08 09:58:25 +01:00
sme.c wifi: cfg80211: validate MLO connections better 2024-01-26 09:39:49 +01:00
sysfs.c
sysfs.h
trace.c
trace.h wifi: cfg80211: Add support for setting TID to link mapping 2023-12-12 10:37:00 +01:00
util.c wifi: cfg80211: Update the default DSCP-to-UP mapping 2024-01-03 15:35:26 +01:00
wext-compat.c wifi: cfg80211: wext: convert return value to kernel-doc 2023-10-23 11:45:17 +02:00
wext-compat.h
wext-core.c
wext-priv.c
wext-proc.c
wext-sme.c wifi: cfg80211: remove wdev mutex 2023-09-11 11:27:23 +02:00
wext-spy.c