[PATCH] ath11k: Add provision to configure rx hashmap

Kalle Valo kvalo at codeaurora.org
Fri Nov 12 01:51:42 PST 2021


P Praneesh <quic_ppranees at quicinc.com> wrote:

> Currently the hashmap is set to default during REO setup and all REO
> rings are equally distributed across 32 hash values.
> 
> In multiple radio cases, 40MHz+80MHz+160MHz, distributing received
> packets across all the CPU will cause CPU overhead. In this case,
> during runtime we can span 40MHz and 80MHz among 2 cores and remaining
> 2 cores are equally distributed for 160MHz by using register mapping.
> 
> Add provision to configure the hashmap during runtime through debugfs
> for improving flexibility to control the destination HW rx queues/rings,
> so that affinity could be used to assign those interrupts to specific
> rings. Setting 0 will disable hash based steering.
> 
> echo "hashmap" > /sys/kernel/debug/ath11k/ipq8074\ hw2.0/rx_hash
> 
> Developers who are aware of hardware register mapping can leverage
> this rx_hash debugfs.
> 
> Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.4.0.1.r2-00012-QCAHKSWPL_SILICONZ-1
> Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.4.0.1-01695-QCAHKSWPL_SILICONZ-1
> 
> Co-developed-by: Sriram R <quic_srirrama at quicinc.com>
> Signed-off-by: Sriram R <quic_srirrama at quicinc.com>
> Signed-off-by: P Praneesh <quic_ppranees at quicinc.com>

debugfs is for debugging and testing. To me it looks like this feature is for
configuring the driver, not debugging.

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/1635164316-27055-1-git-send-email-quic_ppranees@quicinc.com/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches




More information about the ath11k mailing list