When a critical update occurs to any of elements inside beacon frame, AP shall increment BSS Parameters Change Count(BPCC) subfield and set the Critical Update flag subfield of the Capability Information to notify client that the critical update occurred on AP. Refer section "35.3.10 BSS parameter critical update procedure" on IEEE P802.11be D4.0 for details. On beacon offload case, change in CU parameters should be sent to user space either before or along with probe or assoc request frame receive to ensure that user space uses latest CU values and BPCC while generating response to the received frames. So, add the critical update parameters as a new attribute to existing NL80211_CMD_FRAME command instead of sending this on a separate NL80211 event. Add an ieee80211_critical_update() API to send the parameters to cfg80211 and call it when event received from firmware to update critical parameters to user space. Driver (ath12k) changes that utilize this will be posted in the future versions. Based on the suggestion received on below link, add extended feature NL80211_EXT_FEATURE_CRITICAL_UPDATE_OFFLOAD flag if driver handles synchronization among all the links and update critical information on partner link beacon for AP MLD and user space can update critical information only on impacted link beacon template. Add this critical update attribute on NL80211_CMD_FRAME only when this flag is set by driver. Link: https://lore.kernel.org/all/df711a5978b84856a54953a32e4b05923b48870a.camel@xxxxxxxxxxxxxxxx/ Suggested-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Rathees Kumar R Chinannan (2): wifi: nl80211: Add attribute to send critical update parameters wifi: mac80211: Indicate ongoing critical update parameters include/net/cfg80211.h | 10 +++ include/net/mac80211.h | 13 ++++ include/uapi/linux/nl80211.h | 104 +++++++++++++++++++++++++++++ net/mac80211/cfg.c | 43 +++++++++++- net/mac80211/rx.c | 12 ++++ net/mac80211/tx.c | 9 +++ net/wireless/nl80211.c | 123 ++++++++++++++++++++++++++++++++++- 7 files changed, 312 insertions(+), 2 deletions(-) -- 2.34.1