From: Ping-Ke Shih <pkshih@realtek.com>
To: Luka Gejak <luka.gejak@linux.dev>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Michael Straube" <straube.linux@gmail.com>,
Peter Robinson <pbrobinson@gmail.com>,
Bitterblue Smith <rtl8821cerfe2@gmail.com>
Subject: RE: [PATCH v2 01/11] wifi: rtw88: add the RTL8723B chip type and SDIO helper
Date: Fri, 31 Jul 2026 01:29:40 +0000 [thread overview]
Message-ID: <db7e5e0ee9fd4259a05db2e3fc08a5b1@realtek.com> (raw)
In-Reply-To: <6872BF49-855E-42A5-A06F-98C4602B2C25@linux.dev>
Luka Gejak <luka.gejak@linux.dev> wrote:
> On July 30, 2026 11:17:41 AM GMT+02:00, Ping-Ke Shih <pkshih@realtek.com> wrote:
> >luka.gejak@linux.dev <luka.gejak@linux.dev> wrote:
> >> it would be four callbacks (free page check, page
> >> accounting, output queue wait, transfer sizing) and I did not want to
> >> introduce that structure without asking first.
> > If these are called from sdio.c, just check chip ID in sdio.c.
>
> That is what v3 already does, so nothing changes there. All four are
> reached from sdio.c only.
>
> > If they are used by common flow like coex.c, I prefer to implement
> > them by chip_ops.
>
> Let me list them all so you can rule on all of them at once rather than
> a file at a time.
>
> Two go regardless of your answer: the chip test inside
> rtw8723bs_apply_basic_rates() and rtw8723bs_apply_bss_cap() is
> redundant, both callers already establish the chip. In the second one
> the NL80211_IFTYPE_STATION half of the same guard is still needed, so
> only the chip half goes there.
>
> That leaves the following outside sdio.c.
>
> coex.c, 2 sites:
>
> rtw_coex_scan_notify() -> rtw_coex_8723bs_scan_notify()
> rtw_coex_connect_notify() -> rtw_coex_8723bs_connect_notify()
>
> Each tests the chip and bt_disabled once and returns true when it has
> handled the notification; everything below them assumes both.
>
> mac80211.c, 6 sites in rtw_ops_bss_info_changed(): the receive filter
Should receive filter implement in rtw_ops_configure_filter()?
> on assoc and on disassoc, BSSID change bookkeeping, and the
> BSS_CHANGED_ERP_PREAMBLE and BSS_CHANGED_ERP_SLOT handlers.
>
> mac80211.c, 2 sites in rtw_ops_set_key(): enabling and disabling
> default key search for group keys.
Please check existing codes related to sec->default_key_search to see
how to support RTL8723BS by the same flow.
>
> rx.c, 1 site in rtw_rx_fill_rx_status(), the zero length packet test.
> This one runs per received frame, so an indirect call there looks like
> the wrong trade to me. I would keep it inline unless you disagree.
I don't object this. More, I'm considering if no need to check chips, just
be a common flow.
>
> fw.c, 1 site in rtw_fw_write_data_rsvd_page(), two register
> save/restore blocks interleaved with the generic ones. I do not see how
> to lift those into an op without restructuring the whole function, so I
> would keep that inline too.
That looks fine. I remember I don't have comments on this part, no?
>
> For coex.c and the two mac80211.c callbacks I am happy to add ops. One
> constraint on coex.c: the 8723BS code calls rtw_coex_set_ant_path() and
> rtw_coex_set_table(), which are static in coex.c. Implementing the ops
> in rtw8723b.c would mean making those two non-static, which seems worse
> than the chip test it replaces. What I had in mind is leaving the
> functions in coex.c, declaring them in coex.h, and having rtw8723b.c
> point the ops at them, the same shape as the chip_ops::prepare_tx that
> v3 adds for the association sequence. The generic helpers stay static
> that way.
Did you mean callees of rtw_coex_8723bs_scan_workaround() ?
I think you can go with your mind.
>
> Tell me which of those you want as ops and I will do it.
I'd say the version copy many stuffs from vendor driver. However, we should
rewrite and consider the proper places, and if it is actually necessary.
The vendor driver is based on cfg80211, and many stuffs have been done
by mac80211, so we don't need to implement them in rtw88.
Ping-Ke
next prev parent reply other threads:[~2026-07-31 1:29 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-25 15:04 [PATCH v2 00/11] wifi: rtw88: preparations for RTL8723B/RTL8723BS luka.gejak
2026-07-25 15:04 ` [PATCH v2 01/11] wifi: rtw88: add the RTL8723B chip type and SDIO helper luka.gejak
2026-07-27 7:12 ` Ping-Ke Shih
2026-07-27 13:25 ` Luka Gejak
2026-07-30 6:27 ` Luka Gejak
2026-07-30 9:21 ` Ping-Ke Shih
2026-07-30 7:44 ` luka.gejak
2026-07-30 9:17 ` Ping-Ke Shih
2026-07-30 14:28 ` Luka Gejak
2026-07-31 1:29 ` Ping-Ke Shih [this message]
2026-07-31 9:31 ` Luka Gejak
2026-07-25 15:04 ` [PATCH v2 02/11] wifi: rtw88: rx: mark zero length packets on RTL8723BS luka.gejak
2026-07-27 7:14 ` Ping-Ke Shih
2026-07-30 7:44 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 03/11] wifi: rtw88: fw: add the GNT_BT firmware command luka.gejak
2026-07-25 15:04 ` [PATCH v2 04/11] wifi: rtw88: fw: fix the reserved page upload on RTL8723BS luka.gejak
2026-07-27 7:37 ` Ping-Ke Shih
2026-07-30 7:44 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 05/11] wifi: rtw88: coex: add the RTL8723BS scan antenna workaround luka.gejak
2026-07-27 7:58 ` Ping-Ke Shih
2026-07-30 7:44 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 06/11] wifi: rtw88: coex: reassert the antenna path when associating luka.gejak
2026-07-27 8:21 ` Ping-Ke Shih
2026-07-30 7:44 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 07/11] wifi: rtw88: sdio: track free TX pages and OQT credits for RTL8723BS luka.gejak
2026-07-27 8:52 ` Ping-Ke Shih
2026-07-30 7:45 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 08/11] wifi: rtw88: sdio: set up RX aggregation and interrupts " luka.gejak
2026-07-27 8:59 ` Ping-Ke Shih
2026-07-30 7:45 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 09/11] wifi: rtw88: sdio: add TX back-pressure and retry on page starvation luka.gejak
2026-07-27 9:21 ` Ping-Ke Shih
2026-07-30 7:45 ` luka.gejak
2026-07-30 9:02 ` Ping-Ke Shih
2026-07-25 15:04 ` [PATCH v2 10/11] wifi: rtw88: record beacons from the target BSSID before authenticating luka.gejak
2026-07-27 9:27 ` Ping-Ke Shih
2026-07-30 7:45 ` luka.gejak
2026-07-25 15:04 ` [PATCH v2 11/11] wifi: rtw88: run the RTL8723BS association register sequence luka.gejak
2026-07-27 9:33 ` Ping-Ke Shih
2026-07-30 7:45 ` luka.gejak
2026-07-31 0:48 ` Ping-Ke Shih
2026-07-31 9:32 ` Luka Gejak
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=db7e5e0ee9fd4259a05db2e3fc08a5b1@realtek.com \
--to=pkshih@realtek.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=luka.gejak@linux.dev \
--cc=pbrobinson@gmail.com \
--cc=rtl8821cerfe2@gmail.com \
--cc=straube.linux@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