From: Ping-Ke Shih <pkshih@realtek.com>
To: Louis Kotze <loukot@gmail.com>,
"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Cc: "rtl8821cerfe2@gmail.com" <rtl8821cerfe2@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH 1/2] wifi: rtw89: phy: increase RF calibration timeouts for USB transport
Date: Tue, 14 Apr 2026 06:32:35 +0000 [thread overview]
Message-ID: <c722d16dd57041c8ae1b0b3b386b5cbb@realtek.com> (raw)
In-Reply-To: <20260410080017.82946-2-loukot@gmail.com>
Louis Kotze <loukot@gmail.com> wrote:
> USB transport adds significant latency to H2C/C2H round-trips used
> by RF calibration. The existing timeout values were designed for PCIe
> and are too tight for USB, causing "failed to wait RF DACK",
> "failed to wait RF TSSI" and similar errors on USB adapters.
>
> Apply a 4x timeout multiplier when the device uses USB transport.
> The multiplier is applied in rtw89_phy_rfk_report_wait() so all
> calibrations benefit without changing any call sites or PCIe
> timeout values.
>
> The 4x multiplier was chosen based on measured data from two
> independent testers (RTL8922AU, 6GHz MLO and 2.4/5GHz):
>
> Calibration PCIe timeout Max measured (USB) 4x timeout
> PRE_NTFY 5ms 1ms 20ms
> DACK 58ms 72ms 232ms
> RX_DCK 128ms 374ms 512ms
> TSSI normal 20ms 24ms 80ms
> TSSI scan 6ms 14ms 24ms
> TXGAPK 54ms 18ms 216ms
> IQK 84ms 53ms 336ms
> DPK 34ms 30ms 136ms
>
> Tested with RTL8922AU on 6GHz MLO (5GHz + 6GHz simultaneous):
> 25 connect/disconnect cycles with zero failures.
>
> Signed-off-by: Louis Kotze <loukot@gmail.com>
Looks good to me. But please change comment style.
> ---
> drivers/net/wireless/realtek/rtw89/phy.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/net/wireless/realtek/rtw89/phy.c b/drivers/net/wireless/realtek/rtw89/phy.c
> index e70d0e283..4d809df8b 100644
> --- a/drivers/net/wireless/realtek/rtw89/phy.c
> +++ b/drivers/net/wireless/realtek/rtw89/phy.c
> @@ -3956,6 +3956,13 @@ int rtw89_phy_rfk_report_wait(struct rtw89_dev *rtwdev, const char *rfk_name,
> struct rtw89_rfk_wait_info *wait = &rtwdev->rfk_wait;
> unsigned long time_left;
>
> + /* USB transport adds latency to H2C/C2H round-trips, so RF
> + * calibrations take longer than on PCIe. Apply a 4x multiplier
> + * to avoid spurious timeouts.
> + */
For now, we don't apply networking specific comment style. Keep first line '/*'.
> + if (rtwdev->hci.type == RTW89_HCI_TYPE_USB)
> + ms *= 4;
> +
> /* Since we can't receive C2H event during SER, use a fixed delay. */
> if (test_bit(RTW89_FLAG_SER_HANDLING, rtwdev->flags)) {
> fsleep(1000 * ms / 2);
> --
> 2.53.0
next prev parent reply other threads:[~2026-04-14 6:32 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <795a8567fdbe48babc5cf0f2b5e10c0a@realtek.com>
2026-04-10 8:00 ` [PATCH 0/2] wifi: rtw89: fix RF calibration for USB transport Louis Kotze
2026-04-10 8:00 ` [PATCH 1/2] wifi: rtw89: phy: increase RF calibration timeouts " Louis Kotze
2026-04-14 6:32 ` Ping-Ke Shih [this message]
2026-04-15 11:13 ` Louis Kotze
2026-04-10 8:00 ` [PATCH 2/2] wifi: rtw89: phy: make RF calibration timeouts non-fatal on USB Louis Kotze
2026-04-14 6:39 ` Ping-Ke Shih
2026-04-15 11:13 ` Louis Kotze
2026-04-15 11:13 ` [PATCH v2] wifi: rtw89: phy: increase RF calibration timeouts for USB transport Louis Kotze
2026-04-16 1:15 ` Ping-Ke Shih
2026-04-16 4:56 ` Louis Kotze
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=c722d16dd57041c8ae1b0b3b386b5cbb@realtek.com \
--to=pkshih@realtek.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=loukot@gmail.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