[PATCH ath-next] wifi: ath12k: change MAC buffer ring size to 4096

Shawn Guo shengchao.guo at oss.qualcomm.com
Thu Oct 22 06:44:50 PDT 2026


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 at 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.

Shawn



More information about the ath12k mailing list