On 29/04/2025 04:03, Ping-Ke Shih wrote: > Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> wrote: >> Use the same RX aggregation size and timeout used by the out-of-tree >> RTL8723DS driver. Also set mystery bit 31 of REG_RXDMA_AGG_PG_TH. This >> improves the RX speed from ~44 Mbps to ~67 Mbps. >> >> Signed-off-by: Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> >> --- >> drivers/net/wireless/realtek/rtw88/sdio.c | 12 ++++++++++-- >> 1 file changed, 10 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/net/wireless/realtek/rtw88/sdio.c b/drivers/net/wireless/realtek/rtw88/sdio.c >> index c57f683d9af8..6f63fd5db665 100644 >> --- a/drivers/net/wireless/realtek/rtw88/sdio.c >> +++ b/drivers/net/wireless/realtek/rtw88/sdio.c >> @@ -677,12 +677,20 @@ static void rtw_sdio_enable_rx_aggregation(struct rtw_dev *rtwdev) >> { >> u8 size, timeout; >> >> - if (rtw_chip_wcpu_11n(rtwdev)) { > > Originally this only affects 11n chips, but now it affects all chips by > default case. Is that in your expectation? > I think it only changes the behaviour for RTL8723D, RTL8821A, and RTL8812A. These last two don't have SDIO drivers in rtw88, but I can add them to the switch so they get the same size and timeout as before. > And have you tested chips other than RTL8723DS you mentioned in commit > message. If so, please add them to commit message. > I only tested RTL8723DS. I don't have others. >> + switch (rtwdev->chip->id) { >> + case RTW_CHIP_TYPE_8703B: >> size = 0x6; >> timeout = 0x6; >> - } else { >> + break; >> + case RTW_CHIP_TYPE_8723D: >> + size = 0xa; >> + timeout = 0x3; >> + rtw_write8_set(rtwdev, REG_RXDMA_AGG_PG_TH + 3, BIT(7)); >> + break; >> + default: >> size = 0xff; >> timeout = 0x1; >> + break; >> } >> >> /* Make the firmware honor the size limit configured below */ >> -- >> 2.49.0 >