From: Ping-Ke Shih <pkshih@realtek.com>
To: Alastair D'Silva <alastair@d-silva.org>,
"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>,
Ulf Hansson <ulfh@kernel.org>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Kalle Valo <kvalo@kernel.org>, Luka Gejak <luka.gejak@linux.dev>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH v3 2/2] wifi: rtw88: sdio: Split rtw_sdio_rx_isr into 8051 and 3081 variants
Date: Mon, 5 Oct 2026 03:41:02 +0000 [thread overview]
Message-ID: <21f8844f6131464e8e4c59b99055a6c1@realtek.com> (raw)
In-Reply-To: <20261001000303.3505264-3-alastair@d-silva.org>
Alastair D'Silva <alastair@d-silva.org> wrote:
> Following the split of rtw_sdio_handle_interrupt(), the receive FIFO drain
> loop in rtw_sdio_rx_isr() still contained a growing number of special
> cases between 8051 and 3081 chips, evaluated twice per packet in the RX
> hot path:
>
> 1. Register width: 8051 uses a 16-bit read of REG_SDIO_RX0_REQ_LEN,
> while 3081 uses a 32-bit read.
> 2. Loop termination: 8051 must re-read REG_SDIO_HISR on each iteration
> because the RX buffer may contain data while HW or FW is still filling
> it. Conversely, 3081 has improved HW/FW that can use rx_len
> unconditionally, previously requiring a synthetic assignment of
> hisr = REG_SDIO_HISR_RX_REQUEST to trick the loop condition into
> continuing.
>
> To avoid accumulating further special cases and eliminate per-packet
> branching in the RX hot path, split rtw_sdio_rx_isr() into separate
> rtw_sdio_rx_isr_8051() and rtw_sdio_rx_isr_3081() functions.
>
> This removes the artificial hisr assignment on 3081 and keeps the RX
> processing logic cleanly separated by architecture.
It looks like you didn't change logic at all, just split into two
variants. If so, please mention this in commit message.
And, please reduce your commit message. For me, just mention that you
split rtw_sdio_rx_isr() into two variants to be clear, and the two
points are register size and hsir behavior. (as well as first patch;
LLM always give too much stuffs)
>
> Assisted-by: LLM
> Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
next prev parent reply other threads:[~2026-10-05 3:41 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-01 0:03 [PATCH v3 0/2] wifi: rtw88: sdio: Fix interrupt storm on 3081 chips and split RX handling Alastair D'Silva
2026-10-01 0:03 ` [PATCH v3 1/2] wifi: rtw88: sdio: Fix unhandled RX request interrupt storm Alastair D'Silva
2026-10-01 6:02 ` Luka Gejak
2026-10-05 3:35 ` Ping-Ke Shih
2026-10-05 4:39 ` Luka Gejak
2026-10-05 5:30 ` Ping-Ke Shih
2026-10-05 6:44 ` Alastair D'Silva
2026-10-05 6:57 ` Ping-Ke Shih
2026-10-05 8:20 ` Alastair D'Silva
2026-10-05 8:43 ` Ping-Ke Shih
2026-10-01 0:03 ` [PATCH v3 2/2] wifi: rtw88: sdio: Split rtw_sdio_rx_isr into 8051 and 3081 variants Alastair D'Silva
2026-10-05 3:41 ` Ping-Ke Shih [this message]
2026-10-02 2:15 ` [PATCH v3 0/2] wifi: rtw88: sdio: Fix interrupt storm on 3081 chips and split RX handling 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=21f8844f6131464e8e4c59b99055a6c1@realtek.com \
--to=pkshih@realtek.com \
--cc=alastair@d-silva.org \
--cc=jernej.skrabec@gmail.com \
--cc=kvalo@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=luka.gejak@linux.dev \
--cc=martin.blumenstingl@googlemail.com \
--cc=ulfh@kernel.org \
/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
all inboxes | Powered by JetHome®