To support multi link operation (MLO), need to move from the multi wiphy model to a single wiphy model. However, the single wiphy model allows multiple link/radio to be exposed by the same mac80211 hw. So introduce a new container (ath12k_hw) structure. This approach improves scalability for future multi link operation support. Note: This patchset sits on top of below patches wifi: ath12k: Refactor mac callback of config wifi: ath12k: Refactor mac callback of bss info changed wifi: ath12k: Refactor mac callback of conf tx wifi: ath12k: Refactor mac callback of start wifi: ath12k: Refactor mac callback of stop wifi: ath12k: Refactor mac callback of update vif offload wifi: ath12k: Refactor mac callback of configure filter wifi: ath12k: Refactor mac callback of ampdu action wifi: ath12k: Refactor mac callback of flush wifi: ath12k: Refactor start vdev delay function wifi: ath12k: Refactor the DP pdev pre alloc call sequence wifi: ath12k: Refactor the MAC allocation and destroy wifi: ath12k: Refactor MAC setup channel helper function wifi: ath12k: Refactor MAC un/register helper function Karthikeyan Periyasamy (2): wifi: ath12k: Refactor the mac80211 hw access from link/radio wifi: ath12k: Introduce the container for mac80211 hw drivers/net/wireless/ath/ath12k/core.c | 108 +++-- drivers/net/wireless/ath/ath12k/core.h | 47 ++- drivers/net/wireless/ath/ath12k/dp_mon.c | 4 +- drivers/net/wireless/ath/ath12k/dp_rx.c | 6 +- drivers/net/wireless/ath/ath12k/dp_tx.c | 6 +- drivers/net/wireless/ath/ath12k/mac.c | 480 +++++++++++++++++------ drivers/net/wireless/ath/ath12k/mac.h | 14 +- drivers/net/wireless/ath/ath12k/reg.c | 9 +- drivers/net/wireless/ath/ath12k/wmi.c | 17 +- 9 files changed, 510 insertions(+), 181 deletions(-) base-commit: 2cd4e3f91f264926a6b11df948417b74d52ca9b9 prerequisite-patch-id: c2cebfe634adf505f1dd4fff4235dac6162c7da7 prerequisite-patch-id: cc11dc22588dbbd884ce44bcc4680ff0cc64b696 prerequisite-patch-id: 2eb8549471f3a66e200d82f6d3e902de2832a210 prerequisite-patch-id: 330f495e6871998fddc71c735e7fbfe5efc9c798 prerequisite-patch-id: 903acc7b989d5974623fdf4b9be901e2664dbef3 prerequisite-patch-id: 53378c45727417943331a0b98c5718b24a8e3577 prerequisite-patch-id: 9f1e02951355b889eddf23c24d063e9933008b2a prerequisite-patch-id: 9b662f69fa076e61e089a15b5559c4ee913f94a8 prerequisite-patch-id: 4e079d284495ae939dc2173cae9e3fa082e607cb prerequisite-patch-id: f81c109928533db71c84e64e102f5921db406f2d prerequisite-patch-id: 70e3b0429286e17f26ea53369027a6f43a3653c3 prerequisite-patch-id: c2bebc5a0ea8cea79d6aec293096a168860bb48d prerequisite-patch-id: e89f6abeea9771cb0832b8db13507a2b08f774ce prerequisite-patch-id: c26a2ceec9261bec16474d1c8e3ff093d404b778 -- 2.34.1