History log of /freebsd-current/sys/compat/linuxkpi/common/include/net/cfg80211.h
Revision Date Author Comments
# 673d62fc 25-Sep-2023 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: fill regulatory_hint() with some life

Start implementing regulatory_hint() using a .c file based allocation
helper function so we could change structures in the future with
better chances to keep compatibility.
This sets wiphy->regd needed by various LinuxKPI based WiFi drivers.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# adff403f 16-May-2023 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: update compat code for updated drivers

Adjust and add structs, fields, functions to make more modern versions
of LinuxKPI based wireless drivers (based on wireless-testing (
wt-2023-06-09, wt-2023-07-24, and later)) compile.

Some of these changes can only be applied once all drivers get
updated to not break the old versions currently in the tree.
Mark those changes with __FOR_LATER_DRV_UPDATE for now and flip the
switch at a later point.

Sponsored by: The FreeBSD Foundation
MFC after: 20 days


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 51117ed1 10-Jun-2023 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: correct HE_MAC_CAP3 values

While we had assigned dummy values so far to HE, correct the HW_MAC_CAP3
values to avoid compile time errors of drivers when shifting values out
of range.

Sponsored by: The FreeBSD Foundation
MFC after: 10 days


# a3baca22 31-Jan-2023 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: fix types and whitespace

Correct struct member types, fix whitespace, and remove superfluous
return statements in void functions.

No functional changes.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 33911994 30-Dec-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: implement ieee80211_get_hdrlen_from_skb()

Implement ieee80211_get_hdrlen_from_skb() doing basic sanity checks
on lengths (minimal length or skb data length vs. header length).

Sponsored by: The FreeBSD Foundation
MFC after: 10 days


# 13d87d92 30-Dec-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: implement cfg80211_get_ies_channel_number()

Using the previous changes implement cfg80211_get_ies_channel_number()
either based on DSPARMS (or for the future HTINFO).

Sponsored by: The FreeBSD Foundation
MFC after: 10 days


# 5db817d8 30-Dec-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: implement some *eleme/ie* lookup functions

Implement cfg80211_find_elem(), ieee80211_bss_get_elem(),
ieee80211_bss_get_ie(), and cfg80211_find_vendor_ie() with the last
one having a short cut always also checking oui_type in the pattern.

Sponsored by: The FreeBSD Foundation
MFC after: 10 days


# 5edde07c 30-Dec-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: implement cfg80211_{get,put}_bss

Implement cfg80211_{get,put}_bss currently doing malloc/free bits,
so hopefully the drivers get the calls right.

cfg80211_get_bss() sets up a lookup structure which may also take a
result (first hit wins) and calls ieee80211_scan_iterate() comparing
the various values in the iterator funcion. Some of the checks are
partially pointless (as it seems the drivers are not interested in
these parts [ANY] but we keep them for documentation purposes should
futher values arise in the future).

We currently only iterate over the first VAP which will do for now.

Sponsored by: The FreeBSD Foundation
MFC after: 10 days


# 05e640dc 31-Oct-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: update struct member types

Update struct member types for ongoing work towards HT support.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 1d70218e 31-Oct-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 update header files

Adjust struct members, add more (for HE dummy) defines, add more
(wrapper) functions in order to acoomodate another driver.

MFC after: 3 days


# f02e2115 21-Sep-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: add more header compat bits

First part adding more bits in order to synch up drivers to the same
level and enable a new ones.

MFC after: 3 days


# 800aa9cd 09-Sep-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 80211 (+net80211): update and cleanup headers

Fix types for various struct fields (initially added as int).

Move structs and inline functions logically together, e.g., for wowlan.
Add more skeleton functions and #defines needed for iwlwifi d3.c
in the future.

Add struct ieee80211_vht_cap (without "_ie") to net80211 and remove
duplicate definitions in LinuxKPI headers now using net80211 structs.
For now leave ieee80211_ie_vhtcap in net80211. I am not sure yet if we
actually need it as such. That'll be cleaned up with more VHT updates
in net80211 in the future.

No functional changes in currently compiled code intended.

Try to implement ieee80211_action_contains_tpc() as I ran into it with
an older iwlwifi chipset. This depends on c994352a8841eb453.

Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks


# 8d371164 17-Aug-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

net80211: LinuxKPI 802.11: harmonize IEEE80211_VHT_MCS_*

Rather than defining the same values in two places and having to do
conflict resulution on the name in LKPI, change the defines to an
enum in net80211. In addition to de-duplication this also gives us
value checks in certain cases.

Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D36250


# b0f73768 29-Jul-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 header updates

While working on new and updates to drivers more structs, fields,
functions, .. were found, had to be shuffled around, ..
Some of these are (so far still dummy) functions or not properly
typed fields. The IEEE80211_HE_ constants are all still dummy.
This was msotly as a start to make new (out-of-tree) things compile.

Sponsored by: The FreeBSD Foundation (minor VHT/chan width bits)
MFC after: 1 week


# 05d6f4d6 16-May-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 add rfkill_soft_blocked()

Add rfkill_soft_blocked() to the list of things to implement in
preparation for an iwlwifi update.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 9d9ba2b7 24-Mar-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: cleanup debugging

Cleanup some debugging. Rename the global variable to be less
generic. Hide all debugging behind #ifdef for now and turn off.
Rename the debugging sysctl so we can start adding more to the
subtree.

There is a need to change that wildly grown infrastructure into
something more homogenic soon but this should do for 13.1.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 4a07abde 24-Mar-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11: use cfg80211_chandef_create()

Rather than manually setting up a chandef and then effectively forcing
a memcpy, use cfg80211_chandef_create() to do the work for us entirely.
This works here as we do not store the resulting chandef separately
for other use.

While here remove a duplicate assignment in cfg80211_chandef_create().

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# d875aa15 22-Feb-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: update 802.11 headers

Add new defines, struct members, and (stub) functions needed for an
updated iwlwifi. Most of the defines are for rfkill or HE.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 2e183d99 15-Feb-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 header updates and add/adjust source dependencies.

This update is for more/newer versions of drivers:
- add and properly place more structs, enums, defines needed by drivers.
- correct types of struct fields.
- make various function arguments const.
- move REG_RULE() macro to its own file regulatory.h and
use macros for calculations.
- add linuxkpi_ieee80211_get_channel() implementation.
- change linuxkpi_ieee80211_ifattach() to return int for error checking.

No intended functional changes for iwlwifi.

Sponsored by: The FreeBSD Foundation (partially)
MFC after: 3 days


# d7ce88aa 16-Jan-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 correct enum ieee80211_channel_flags

enum ieee80211_channel_flags are used as bit fields and not as 1..n.
Correct the values using BIT(n).

This is also hoped to fix problems with 7260 cards which come up and
panic due to an empty channel list as all channels are set disabled [1].
It will hopefully also fix the one or other oddity.

Reported by: ambrisko, Mike Tancsa (mike sentex.net) [1]
Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 51b461b3 09-Jan-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: 802.11 update compat code for driver updates

Add more (dummy in case of HE) defines, structs, functions and another
mac80211 function pointer needed to update and support recent drivers.

MFC after: 3 days


# e2008091 08-Jan-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI / iwlwifi: fix spelling of constants

Fix the spelling of IEEE80211_HE_PHY_CAP9_NOMINAL_PKT_PADDING_*
(was "NOMIMAL"). The original version came from iwlwifi
in iwlwifi-next. Other drivers (from wireless-testing) already
use the correct spelling and need this change in LinuxKPI.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 6b4cac81 26-Dec-2021 Bjoern A. Zeeb <bz@FreeBSD.org>

LinuxKPI: add 802.11 compat code

Add 802.11 compat code for mac80211 and to a minimal degree cfg80211.
This allows us to compile and use basic functionality of wireless
drivers such as iwlwifi.

This is a constant work in progress but having it in the tree will
allow others to test and more easy to track changes and avoid having
snapshots no longer applying to branches.

Sponsored by: The FreeBSD Foundation
MFC after: 3 days