[PATCH ath-next 0/6] wifi: ath12k: handle link select and inactivate

Vasanthakumar Thiagarajan vasanthakumar.thiagarajan at oss.qualcomm.com
Tue Jun 3 02:41:15 PDT 2025



On 5/22/2025 2:24 PM, Baochen Qiang wrote:
> Currently host activate all useful links:
> 
> 	ieee80211_set_active_links(vif, ieee80211_vif_usable_links(vif))
> 
> this leads to 2 issues:
> 
> 1#: If 2 links are created/activated on the same device, and both channels
> used by them fall on the same hardware MAC, throughput would be lower
> compared with even one link due to MAC switching between them.
> 
> 2#: If there are more than 2 useful links, WCN7850 firmware crashes when
> host tries to bringup the 3rd link, because firmware supports at most 2
> links for a ML connection.
> 
> To address the first issue, host needs to send
> WMI_MLO_LINK_SET_ACTIVE_CMDID command to firmware such that firmware can
> deactivate one of the links. This is done in patches 4 and 5.
> 
> To address the second issue, host needs to make decision to select 2
> links out of the useful links to activate. This is done in patch 6.
> 
> The link select and inactivate are both based on the knowledge of hardware
> modes, which are advertised by firmware in WMI_SERVICE_READY_EXT_EVENTID
> and WMI_SERVICE_READY_EXT2_EVENTID events. Such preparation work is done
> in the first three patches.
> 
> Signed-off-by: Baochen Qiang <quic_bqiang at quicinc.com>
> ---
> Baochen Qiang (6):
>        wifi: ath12k: parse and save hardware mode info from WMI_SERVICE_READY_EXT_EVENTID event for later use
>        wifi: ath12k: parse and save sbs_lower_band_end_freq from WMI_SERVICE_READY_EXT2_EVENTID event
>        wifi: ath12k: update freq range for each hardware mode
>        wifi: ath12k: support WMI_MLO_LINK_SET_ACTIVE_CMDID command
>        wifi: ath12k: update link active in case two links fall on the same MAC
>        wifi: ath12k: don't activate more links than firmware supports
> 
>   drivers/net/wireless/ath/ath12k/core.h |   6 +
>   drivers/net/wireless/ath/ath12k/mac.c  | 364 +++++++++++++++-
>   drivers/net/wireless/ath/ath12k/mac.h  |   2 +
>   drivers/net/wireless/ath/ath12k/wmi.c  | 759 ++++++++++++++++++++++++++++++++-
>   drivers/net/wireless/ath/ath12k/wmi.h  | 180 +++++++-
>   5 files changed, 1305 insertions(+), 6 deletions(-)

Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan at oss.qualcomm.com>



More information about the ath12k mailing list