Linux wireless drivers development
 help / color / mirror / Atom feed
From: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
To: Shawn Guo <shengchao.guo@oss.qualcomm.com>
Cc: Yingying Tang <yingying.tang@oss.qualcomm.com>,
	linux-arm-msm@vger.kernel.org, ath12k@lists.infradead.org,
	linux-wireless@vger.kernel.org, yintang@qti.qualcomm.com
Subject: Re: [PATCH ath-next] wifi: ath12k: change MAC buffer ring size to 4096
Date: Fri, 23 Oct 2026 10:13:18 +0800	[thread overview]
Message-ID: <cbfa35c9-cfa5-4eb5-a203-09c9069e3b0b@oss.qualcomm.com> (raw)
In-Reply-To: <atoTUgEIfkg6b29U@QCOM-aGQu4IUr3Y>



On 10/22/2026 9:44 PM, Shawn Guo wrote:
> On Thu, Oct 22, 2026 at 05:20:56PM +0800, Shawn Guo wrote:
>> On Thu, Oct 22, 2026 at 10:30:45AM +0800, Baochen Qiang wrote:
>>>
>>>
>>> On 10/20/2026 4:53 PM, Shawn Guo wrote:
>>>> + linux-arm-msm
>>>>
>>>> On Tue, Jun 09, 2026 at 08:13:58PM -0700, Yingying Tang wrote:
>>>>> For WCN7850, MAC buffer ring size is updated to 2048 in
>>>>> 955df16f2a4c3 ("wifi: ath12k: change MAC buffer ring size to 2048")
>>>>> to increase peak throughput.
>>>>>
>>>>> But during the RX process, a phenomenon can still be observed where
>>>>> the throughput drops by about 30% from its peak value and then recovers,
>>>>> and this behavior repeats during RX.
>>>>>
>>>>> After increasing MAC buffer ring size to 4096, the data rate drop has
>>>>> gone.
>>>>>
>>>>> Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c5-00302-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.115823.3
>>>>>
>>>>> Signed-off-by: Yingying Tang <yingying.tang@oss.qualcomm.com>
>>>>
>>>> FYI, in case someone else runs into this: with this change (merged in
>>>> v7.3), WiFi on my Lenovo Yoga Slim 7x (X1E80100, WCN7850 hw2.0) stopped
>>>> working with the older firmware that Debian trixie still ships
>>>> (firmware-atheros 20250410-2):
>>>>
>>>>   WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
>>>>
>>>> Probe and firmware download succeed, but every WMI command times out
>>>> once the interface is brought up:
>>>>
>>>>   ath12k_wifi7_pci 0004:01:00.0: wmi command 16387 timeout
>>>>   ath12k_wifi7_pci 0004:01:00.0: failed to send WMI_PDEV_SET_PARAM cmd
>>>>   ath12k_wifi7_pci 0004:01:00.0: failed to enable PMF QOS: -11
>>>>   ath12k_wifi7_pci 0004:01:00.0: fail to start mac operations in pdev idx 0 ret -11
>>>>
>>>> Bisecting ath12k between v7.2 and v7.3 lands on this commit, and
>>>> reverting it on v7.3 brings WiFi back with the old firmware.
>>>>
>>>> Unmodified v7.3 works fine after updating to the current linux-firmware
>>>> image:
>>>>
>>>>   WLAN.HMT.1.1.c7-00108-QCAHMTSWPL_V1.0_V2.0_SILICONZ_UPSTREAM-3
>>>>
>>>> On Debian trixie that one is available from trixie-backports
>>>> (firmware-atheros 20260916-1~bpo13+1).
>>>>
>>>> So nothing needs fixing on the driver side. I'm just leaving this here
>>>> so that anyone who sees "wmi command ... timeout" on WCN7850 after a
>>>> kernel upgrade knows to update the firmware first.
>>>
>>> Hi Shawn, thanks for reporting this. I just had a quick test
>>> WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 with the latest ath tree
>>> (ath-202610191908), everything looks good, simple connection and ping pass, I don't see
>>> any ath12k warning.
>>>
>>> The firmware images I am using comes from the first commit adding WCN7850 firmware:
>>>
>>> 	fb04a7f4b750 ("ath12k: add new driver and firmware for WCN7850")
>>>
>>> and the md5 values are:
>>>
>>> linux-firmware/ath12k/WCN7850/hw2.0$ md5sum ./*
>>> d3750b67b1013fe82358d0538fb131b0  ./amss.bin
>>> c79c410d585360000c0490f16fda43e2  ./board-2.bin
>>> 73056f1d2aff886ce9bff313f455e963  ./m3.bin
>>> d0ee61498bf1a205147cdbcf645391e7  ./Notice.txt
>>>
>>> can you share the md5 values of your images?
>>
>> Hi Baochen,
>>
>> Here are md5 values of the old firmware shipped by trixie firmware-atheros
>> 20250410-2.
>>
>> $ md5sum /lib/firmware/ath12k/WCN7850/hw2.0/*
>> d3750b67b1013fe82358d0538fb131b0  /lib/firmware/ath12k/WCN7850/hw2.0/amss.bin
>> 5dacdfbe6c3c25d9e0605be8a9f1f6e4  /lib/firmware/ath12k/WCN7850/hw2.0/board-2.bin
>> 73056f1d2aff886ce9bff313f455e963  /lib/firmware/ath12k/WCN7850/hw2.0/m3.bin
>>
>>> and have you ever tried the upstream mainline
>>> kernel or the latest ath.git tree?
>>
>> I'm not sure what you mean by upstream mainline kernel, but v7.3 should
>> be the mainline kernel released a few days ago.
>>
>> On the other hand, I just tested ath.git tree at tag ath-202610191908,
>> and it worked with the old firmware. So it seems there are some gaps
>> between v7.3 and ath kernel.
> 
> I bisected drivers/net/wireless/ath/ath12k between v7.3 (broken) and
> the ath tag (working). It lands on:
> 
>   15f7603b69a8 ("wifi: ath12k: Increase RXDMA buffer ring size for default memory profile")
> 
> The previous commit, 643f0bf93617, still has 4096 entries and is broken.
> 15f7603b69a8 changes one line, .rxdma_buf_ring_size from 4096 to 8192,
> and works.

thanks for sharing this. I can repro it using the 481 firmware once get 15f7603b69a8 reverted.

so the rule here seems that rxdma_buf_ring_size must be at least twice as large as
DP_RX_MAC_BUF_RING_SIZE (I also tries four times large, it works). This rule looks
reasonable to me, since WCN7850 get twos HW MACs and its firmware setups rx_mac_buf ring
for each, and each ring fills itself using the buffers all from the single RXDMA buffer ring.

maybe I should submit a patch mandate this rule.

> 
> Shawn


  reply	other threads:[~2026-10-23  2:13 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-10  3:13 [PATCH ath-next] wifi: ath12k: change MAC buffer ring size to 4096 Yingying Tang
2026-06-29  2:16 ` Baochen Qiang
2026-06-29  5:40 ` Rameshkumar Sundaram
2026-06-30 21:26 ` Jeff Johnson
2026-10-20  8:53 ` Shawn Guo
2026-10-21  5:08   ` Manivannan Sadhasivam
2026-10-22  2:30   ` Baochen Qiang
2026-10-22  9:20     ` Shawn Guo
2026-10-22 11:00       ` Baochen Qiang
2026-10-22 13:38         ` Shawn Guo
2026-10-23  1:59           ` Baochen Qiang
2026-10-22 13:44       ` Shawn Guo
2026-10-23  2:13         ` Baochen Qiang [this message]
2026-10-23  2:43           ` Shawn Guo
2026-10-23  3:13             ` Baochen Qiang
2026-10-23  3:44               ` Shawn Guo
2026-10-23  4:42                 ` Baochen Qiang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cbfa35c9-cfa5-4eb5-a203-09c9069e3b0b@oss.qualcomm.com \
    --to=baochen.qiang@oss.qualcomm.com \
    --cc=ath12k@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=shengchao.guo@oss.qualcomm.com \
    --cc=yingying.tang@oss.qualcomm.com \
    --cc=yintang@qti.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox