On 8/28/2025 11:05 PM, Ripan Deuri wrote:
This patch series continues the modularization work described in the https://lore.kernel.org/linux-wireless/20250812-ath12k-mod-v1-0-8c9b0eb9335d@xxxxxxxxxxx ("wifi: ath12k: Ath12k modularization changes") series, which established the foundation for the Next Generation (NG) ath12k driver framework. That series introduced the foundational split of the original ath12k.ko into two distinct modules: a common module (ath12k.ko) and an architecture- specific module (ath12k_wifi7.ko) for Wi-Fi 7 devices as depicted below. +-----------------+ | | | ath12k.ko | | (common) | +---------------+ | | | | +-----------------+ | ath12k.ko | ===========> | | +------------------+ +---------------+ | | | ath12k_wifi7.ko | | (wifi7 family) | | | +------------------+ Building on that framework, this series focuses on modularizing the Data Path (DP) of the ath12k driver, allowing the common DP to be reused across different hardware architectures. The patches included here support the NG framework objective by reorganizing DP-specific files and the directory structure as outlined below. Existing file org New file org ----------------- ------------ ├── dp.c ├── dp.c ├── dp.h ├── dp.h ├── dp_rx.c ├── dp_htt.c ├── dp_rx.h ├── dp_htt.h ├── dp_tx.c ├── dp_rx.c ├── dp_tx.h ├── dp_rx.h ├── hal.c ├── dp_tx.c ├── hal_desc.h ├── dp_tx.h ├── hal.h ├── hal.c ├── hal_rx.c ├── hal.h ├── hal_rx.h ├── wifi7 ├── hal_tx.c │ ├── dp.c ├── hal_tx.h │ ├── dp_rx.c │ ├── dp_rx.h │ ├── dp_tx.c │ ├── dp_tx.h │ ├── hal_desc.h │ ├── hal_qcn9274.c │ ├── hal_qcn9274.h │ ├── hal_rx.c │ ├── hal_rx.h │ ├── hal_tx.c │ ├── hal_tx.h │ ├── hal_wcn7850.c │ ├── hal_wcn7850.h │ ├── rx_desc.h Note: While common files are not intended to include architecture-specific headers, a few Wi-Fi 7 headers are temporarily included in common files across patches to simplify patch splitting. This will be resolved in a later series. --- Harsh Kumar Bijlani (4): wifi: ath12k: Move HTT code in dp.h to newly introduced files wifi: ath12k: Move HTT Rx specific code to newly introduced files wifi: ath12k: Move HTT Tx specific code to newly introduced files wifi: ath12k: Move HTT specific code from dp.c to newly introduced files Pavankumar Nandeshwar (16): wifi: ath12k: Move hal_tx and hal_rx to wifi7 directory wifi: ath12k: Move hal_tx.h file to wifi7 directory wifi: ath12k: Move hal_rx.h file to wifi7 directory wifi: ath12k: Move HAL Rx wrapper APIs to dp_rx.h wifi: ath12k: Move Rx error related functions to wifi7 directory wifi: ath12k: Move hal_desc.h file to wifi7 directory wifi: ath12k: Move rx_desc.h file to wifi7 directory wifi: ath12k: Move rxdma ring config functions to wifi7 directory wifi: ath12k: Move rx error and defrag functions to wifi7 directory wifi: ath12k: Move regular msdu processing functions to wifi7 directory wifi: ath12k: Move srng processing to wifi7 directory wifi: ath12k: Separate arch specific part of RX APIs wifi: ath12k: Move arch specific REO functions to wifi7 directory wifi: ath12k: Move arch specific rx tid and related functions to wifi7 directory wifi: ath12k: Move arch specific tx APIs to wifi7 directory wifi: ath12k: Move ath12k_dp_tx and related APIs to wifi7 directory drivers/net/wireless/ath/ath12k/Makefile | 9 +- drivers/net/wireless/ath/ath12k/ahb.c | 3 +- drivers/net/wireless/ath/ath12k/core.h | 4 +- .../wireless/ath/ath12k/debugfs_htt_stats.h | 4 +- drivers/net/wireless/ath/ath12k/dp.c | 159 +- drivers/net/wireless/ath/ath12k/dp.h | 1518 +------- drivers/net/wireless/ath/ath12k/dp_htt.c | 1354 ++++++++ drivers/net/wireless/ath/ath12k/dp_htt.h | 1546 +++++++++ drivers/net/wireless/ath/ath12k/dp_mon.c | 4 +- drivers/net/wireless/ath/ath12k/dp_rx.c | 3056 +---------------- drivers/net/wireless/ath/ath12k/dp_rx.h | 297 +- drivers/net/wireless/ath/ath12k/dp_tx.c | 1609 +-------- drivers/net/wireless/ath/ath12k/dp_tx.h | 41 +- drivers/net/wireless/ath/ath12k/hal.c | 8 +- drivers/net/wireless/ath/ath12k/hal.h | 501 ++- drivers/net/wireless/ath/ath12k/mac.c | 3 +- drivers/net/wireless/ath/ath12k/pci.c | 3 +- drivers/net/wireless/ath/ath12k/wifi7/dp.c | 137 + drivers/net/wireless/ath/ath12k/wifi7/dp.h | 15 + drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c | 2043 +++++++++++ drivers/net/wireless/ath/ath12k/wifi7/dp_rx.h | 47 + drivers/net/wireless/ath/ath12k/wifi7/dp_tx.c | 908 +++++ drivers/net/wireless/ath/ath12k/wifi7/dp_tx.h | 14 + .../ath/ath12k/{ => wifi7}/hal_desc.h | 149 +- .../wireless/ath/ath12k/{ => wifi7}/hal_rx.c | 8 +- .../wireless/ath/ath12k/{ => wifi7}/hal_rx.h | 299 +- .../ath12k/{rx_desc.h => wifi7/hal_rx_desc.h} | 48 +- .../wireless/ath/ath12k/{ => wifi7}/hal_tx.c | 6 +- .../wireless/ath/ath12k/{ => wifi7}/hal_tx.h | 11 +- drivers/net/wireless/ath/ath12k/wifi7/hw.c | 4 +- 30 files changed, 6993 insertions(+), 6815 deletions(-) create mode 100644 drivers/net/wireless/ath/ath12k/dp_htt.c create mode 100644 drivers/net/wireless/ath/ath12k/dp_htt.h create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp.c create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp.h create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp_rx.c create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp_rx.h create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp_tx.c create mode 100644 drivers/net/wireless/ath/ath12k/wifi7/dp_tx.h rename drivers/net/wireless/ath/ath12k/{ => wifi7}/hal_desc.h (95%) rename drivers/net/wireless/ath/ath12k/{ => wifi7}/hal_rx.c (99%) rename drivers/net/wireless/ath/ath12k/{ => wifi7}/hal_rx.h (83%) rename drivers/net/wireless/ath/ath12k/{rx_desc.h => wifi7/hal_rx_desc.h} (97%) rename drivers/net/wireless/ath/ath12k/{ => wifi7}/hal_tx.c (97%) rename drivers/net/wireless/ath/ath12k/{ => wifi7}/hal_tx.h (96%)
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@xxxxxxxxxxxxxxxx>