From: "Luka Gejak" <luka.gejak@linux.dev>
To: "Ping-Ke Shih" <pkshih@realtek.com>,
"Bitterblue Smith" <rtl8821cerfe2@gmail.com>,
linux-wireless@vger.kernel.org
Subject: Re: [PATCH rtw-next 0/5] wifi: rtw88: pci: Support an older design, like RTL8821AE/RTL8812AE
Date: Tue, 27 Oct 2026 07:25:16 +0000 [thread overview]
Message-ID: <fc98b0719bad6282083133041e80136a7215359f@linux.dev> (raw)
In-Reply-To: <4c0eae7568334475b3b9a57e50f5c912@realtek.com>
Hi Ping-Ke,
October 27, 2026 at 2:52 AM, "Ping-Ke Shih" <pkshih@realtek.com> wrote:
>
> Bitterblue Smith <rtl8821cerfe2@gmail.com> wrote:
>
> >
> > This series extends rtw88_pci to support an older design, like
> > RTL8821AE, RTL8812AE, RTL8723BE, etc.
> >
> The older design is own-bit ring, and the new is read/write index ring
> with buffer descriptor. Can we use 'own-bit' instead of 'old' as the file
> name ?
I agree with this name proposition.
>
> >
> > After this, another ~20 small patches can enable support for RTL8821AE
> > and RTL8812AE.
> >
> Will you plan to implement RTL8723BE (you listed it above) in rtw88?
>
As far as I know Bitterblue hasn't commited to implementing RTL8723BE
in rtw88. That development is being done by WillyHB on github. This
series is requirement for future implementation of RTL8723BE in rtw88.
> >
> > Then rtl8821ae can be deleted from rtlwifi.
> >
> Luka asked me to merge AP mode for RTL8723BS, because the AP mode of staging
> rtl8723bs can work well. If you decide to delete it from rtlwifi, please
> make sure all features are implemented before deleting. However, I can't
> say what the exactly all features are.
>
> [1] https://lore.kernel.org/linux-wireless/d6af5cebfa1a46e2bc2da662634766d7@realtek.com/T/#maa2a3e897d5d488d0219399f9555d88b9ef6504f
>
> >
> > rtw88 is not without problems, but in my experience it's more reliable
> > with these two chips. In the 6-8 months I used this code, I observed
> > these problems with rtw88:
> >
> > * The top speed is a bit lower: ~220 Mbps instead of ~300 Mbps. In the
> > case of TX, the difference is due to the EDCA parameters. rtw88 uses
> > the ones from mac80211 (rtw_conf_tx()), whereas rtlwifi uses its own
> > "turbo" values when there are not too many non-BE packets
> > (rtl8821ae_dm_check_edca_turbo()). Not sure why the RX speed is
> > lower.
> >
> Maybe you can try to compare them by VO or VI packets?
>
> >
> > * RTL8821AE RX speed gets limited to 70-100 Mbps sometimes. If I watch
> > a Youtube video with Bluetooth headphones for 10 minutes and then
> > switch to another wifi adapter while the video is playing, leaving
> > the RTL8821AE's wifi side idle, usually within 20 minutes it will
> > start to raise IMR_RDU when it reaches the end of the RX ring and
> > goes back to the beginning.
> >
> Does it still happen without Bluetooth? IIRC the rtw88 BT-coexistence
> mainly supports RTL8822BE and RTL8822CE. I believe the algorithm can
> share with other chips, but control registers or additional settings might
> be missing.
>
> >
> > It uses RX descriptor number 511, then number 0, then it doesn't
> > want to use number 1 for "a while". It raises IMR_RDU once or twice,
> > and only then it moves on to number 1, 2...
> >
> > Usually when it raises IMR_RDU there are 510 or 511 RX descriptors
> > available (out of 512), so it has no excuse.
> >
> > Once it has raised IMR_RDU the RX speed doesn't exceed 70-100 Mbps
> > anymore.
> >
> If driver can receive packets on time, how does it raise ISR_RDU?
> Is RX interrupt triggered on time?
>
> >
> > Powering off and on again, which happens a lot when the wifi
> > interface is idle, doesn't help.
> >
> > The only thing that seems to help is reloading the driver, but even
> > that may not always work.
> >
> I think reloading the driver and interface idle are very similar (almost
> the same). No idea why they have different results.
Maybe firmware reload?
>
> >
> > Switching to another wifi adapter while playing some video is the
> > most reliable way to trigger the problem, but it can also happen
> > randomly, it just takes many hours.
> >
> Thanks for your effort.
>
> Ping-Ke
>
Best regards,
Luka Gejak
next prev parent reply other threads:[~2026-10-27 7:25 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-23 22:57 [PATCH rtw-next 0/5] wifi: rtw88: pci: Support an older design, like RTL8821AE/RTL8812AE Bitterblue Smith
2026-10-23 22:59 ` [PATCH rtw-next 1/5] wifi: rtw88: Pass RX buffer to rtw_rx_query_rx_desc() Bitterblue Smith
2026-10-23 23:00 ` [PATCH rtw-next 2/5] wifi: rtw88: Pass TX descriptor to rtw_tx_fill_tx_desc() Bitterblue Smith
2026-10-23 23:01 ` [PATCH rtw-next 3/5] wifi: rtw88: pci: Introduce struct rtw_pci_gen Bitterblue Smith
2026-10-24 8:41 ` Luka Gejak
2026-10-23 23:02 ` [PATCH rtw-next 4/5] wifi: rtw88: pci: Add functions to support older chips Bitterblue Smith
2026-10-24 8:36 ` Luka Gejak
2026-10-23 23:05 ` [PATCH rtw-next 5/5] wifi: rtw88: pci: Handle more RX interrupts for RTL8821AE Bitterblue Smith
2026-10-27 1:52 ` [PATCH rtw-next 0/5] wifi: rtw88: pci: Support an older design, like RTL8821AE/RTL8812AE Ping-Ke Shih
2026-10-27 7:25 ` Luka Gejak [this message]
2026-10-27 8:07 ` Ping-Ke Shih
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=fc98b0719bad6282083133041e80136a7215359f@linux.dev \
--to=luka.gejak@linux.dev \
--cc=linux-wireless@vger.kernel.org \
--cc=pkshih@realtek.com \
--cc=rtl8821cerfe2@gmail.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