Search Linux Wireless

[wireless-next v2 0/4] [v2] wifi: S1G short beacon support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patchset implements S1G short beaconing within mac80211 and
cfg80211. I don't think its worth going into the technical detail
again as that can be found in the commit messages or in v1:

https://patchwork.kernel.org/project/linux-wireless/cover/20250714051403.597090-1-lachlan.hodges@xxxxxxxxxxxxxx/

The changes since v1 are as follows:

(1) Rather than introduce new validation routines for the short
    beacons, we leverage the existing routines since they can
    handle all beacon formats and ensure both long and short
    beacons are well formed without validating the existence of
    particular elements.

(2) The long beacon period (renamed from short beacon period to
    better describe what it actually is i.e the number of beacon
    intervals between each long beacon) is now an individual
    attribute. The reasoning behind this is that this attribute
    cannot be updated dynamically, unlike the beacon template. So
    we have taken inspiration for how the regular beacon interval,
    DTIM period etc. are handled. This allows us to use the same
    routine for both updating and setting the beacon data, but
    require this attribute when bringing up the interface if it
    is to be using short beacons. We think this is a much cleaner
    approach.

NB: It was mentioned it would be good to find a better way (or
    introduce) a new method for determining if we are bringing up
    an S1G interface. This patch does not handle that, though it is
    something I briefly looked into and will probably be done in a
    future patchset.

(3) We no longer introduce the short beacon variant for the beacon
    interval or DTIM period - and instead just reuse the existing
    parameters since - fundamentally - they don't change anything
    besides add more code complexity to various key code paths plus
    require changes within mac80211_hwsim. This patch now no longer
    requires hwsim changes.

(4) Drop further validation from within mac80211, and just perform
    it within cfg80211.

(5) Due to (3), we can drop all mac80211_hwsim changes.

(6) Fix up a kernel-doc error and properly describe the max
    short beacon nested attributes.

Overall this patch is much leaner, and has less of an affect on
non S1G interfaces so that is obviously preferable for everyone.
Even then it is more inline with what is currently done when setting
vs updating an interface and handling optional attributes.

I've sent this as a non-RFC as I think it's a "finished patchset"
but obviously still open to any feedback to resend another version.

Lachlan Hodges (4):
  wifi: cfg80211: support configuring an S1G short beaconing BSS
  wifi: mac80211: support initialising an S1G short beaconing BSS
  wifi: mac80211: support initialising current short beacon index
  wifi: mac80211: support returning the S1G short beacon skb

 include/net/cfg80211.h        |  23 ++++++++
 include/net/mac80211.h        |   9 +++
 include/uapi/linux/nl80211.h  |  39 +++++++++++++
 net/mac80211/cfg.c            |  93 +++++++++++++++++++++++++++++-
 net/mac80211/debugfs_netdev.c |   2 +-
 net/mac80211/ieee80211_i.h    |  15 ++++-
 net/mac80211/mesh.c           |   2 +-
 net/mac80211/tx.c             | 104 ++++++++++++++++++++++++++++++----
 net/mac80211/util.c           |  31 +++++++++-
 net/wireless/nl80211.c        |  72 +++++++++++++++++++++++
 10 files changed, 370 insertions(+), 20 deletions(-)

-- 
2.43.0





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux