[PATCH v4 00/12] wifi: ath12k: Add single wiphy support

Rameshkumar Sundaram
2024-03-12T13:56:20Z

From: Sriram R <quic_srirrama@quicinc.com>

With the introduction of Multi Link Operation (MLO) support in
IEEE802.11be, each EHT AP/non AP interface is capable of
operating with multiple radio links.

cfg80211/mac80211 expects drivers to abstract the communication
between such Multi Link HW and mac80211/cfg80211 since it depends
on different driver/HW implementation. Hence the single wiphy
abstraction with changes in datastructures were introduced in
"wifi: ath12k: Introduce hw abstraction"

This patchset extends the implementation to allow combination
of multiple underlying radios into a single composite hw/wiphy
for registration. Since now multiple radios are represented by
a single wiphy, changes are required in various mac ops that the
driver supports since the driver now needs to learn on how to tunnel
various mac ops properly to a specific radio.

This patchset covers the basic mac80211 ops for an interface bring up
and operation.

Note:
Monitor and hw reconfig support for Single Wiphy will be done in future
patchsets.

---
v4:
- Updated missing Signed-off details for patches.

v3:
- Rebased on ToT (added additional ar check in PATCH 08/12 for p2p)
- Introduced iterator to loop through ars in an ah(for_each_ar())
- Addressed comments on reverse xmas tree declaration style.

v2:
- Rebased on ToT and dependent patchset

Karthikeyan Periyasamy (1):
wifi: ath12k: add multiple radio support in a single MAC HW
un/register

Sriram R (11):
wifi: ath12k: Modify add and remove chanctx ops for single wiphy
support
wifi: ath12k: modify ath12k mac start/stop ops for single wiphy
wifi: ath12k: vdev statemachine changes for single wiphy
wifi: ath12k: scan statemachine changes for single wiphy
wifi: ath12k: fetch correct radio based on vdev status
wifi: ath12k: Cache vdev configs before vdev create
wifi: ath12k: Add additional checks for vif and sta iterators
wifi: ath12k: modify regulatory support for single wiphy architecture
wifi: ath12k: Modify set and get antenna mac ops for single wiphy
wifi: ath12k: Modify rts threshold mac op for single wiphy
wifi: ath12k: support get_survey mac op for single wiphy

drivers/net/wireless/ath/ath12k/core.h | 38 +-
drivers/net/wireless/ath/ath12k/hw.h | 1 +
drivers/net/wireless/ath/ath12k/mac.c | 911 +++++++++++++++++++------
drivers/net/wireless/ath/ath12k/p2p.c | 3 +-
drivers/net/wireless/ath/ath12k/p2p.h | 1 +
drivers/net/wireless/ath/ath12k/reg.c | 55 +-
6 files changed, 785 insertions(+), 224 deletions(-)

--
2.25.1