On 7/8/2025 9:37 PM, Jeff Johnson wrote:
On 7/2/2025 10:17 PM, Roopni Devanathan wrote:
From: Sriram R <quic_srirrama@xxxxxxxxxxx>
A multi-link client can use any link for transmissions. It can decide to
put one link in power save mode for longer periods while listening on the
other links as per MLD listen interval. Unicast management frames sent to
that link station might get dropped if that link station is in power save
mode or inactive. In such cases, firmware can take decision on which link
to use.
Allow the firmware to decide on which link management frame should be
sent on, by filling the hardware link with maximum value of u32, so that
the firmware will not have a specific link to transmit data on and so
the management frames will be link agnostic. For QCN devices, all action
frames are marked as link agnostic. For WCN devices, if the device is
configured as an AP, then all frames other than probe response frames,
authentication frames, association response frames, re-association response
frames and ADDBA request frames are marked as link agnostic and if the
device is configured as a station, then all frames other than probe request
frames, authentication frames and ADDBA request frames are marked as link
agnostic.
Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.4.1-00199-QCAHKSWPL_SILICONZ-1
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
Signed-off-by: Sriram R <quic_srirrama@xxxxxxxxxxx>
Co-developed-by: Roopni Devanathan <quic_rdevanat@xxxxxxxxxxx>
Signed-off-by: Roopni Devanathan <quic_rdevanat@xxxxxxxxxxx>
---
drivers/net/wireless/ath/ath12k/core.h | 1 +
drivers/net/wireless/ath/ath12k/hw.c | 55 +++++++++++++++++++++++++
drivers/net/wireless/ath/ath12k/hw.h | 2 +
drivers/net/wireless/ath/ath12k/mac.c | 5 ++-
drivers/net/wireless/ath/ath12k/peer.c | 2 +-
drivers/net/wireless/ath/ath12k/peer.h | 1 +
drivers/net/wireless/ath/ath12k/wmi.c | 56 ++++++++++++++++++++++++--
drivers/net/wireless/ath/ath12k/wmi.h | 16 +++++++-
8 files changed, 130 insertions(+), 8 deletions(-)
This no longer applies cleanly to ath/main, please rebase
Applying: wifi: ath12k: Add support to enqueue management frame at MLD level
Using index info to reconstruct a base tree...
M drivers/net/wireless/ath/ath12k/core.h
M drivers/net/wireless/ath/ath12k/mac.c
M drivers/net/wireless/ath/ath12k/peer.h
Falling back to patching base and 3-way merge...
Auto-merging drivers/net/wireless/ath/ath12k/peer.h
CONFLICT (content): Merge conflict in drivers/net/wireless/ath/ath12k/peer.h
Auto-merging drivers/net/wireless/ath/ath12k/mac.c
Auto-merging drivers/net/wireless/ath/ath12k/core.h
Recorded preimage for 'drivers/net/wireless/ath/ath12k/peer.h'
error: Failed to merge in the changes.
Patch failed at 0001 wifi: ath12k: Add support to enqueue management frame at MLD level
Sure I'll send a re-based version.