On Tue, Oct 13, 2026 at 03:15:28PM -0500, Rishik Yechuri wrote:
> The rtl8723bs driver has its own set of macros and inline functions in
> wifi.h for working with 802.11 frame headers. They access the header
> through hardcoded byte offsets and pointer casts, and they duplicate
> struct ieee80211_hdr and the helpers in <linux/ieee80211.h> that
> mac80211, cfg80211 and other wireless drivers already use.
>
> This series switches the driver over to the generic versions and
> deletes the private ones from wifi.h. Each patch converts one group of
> macros and removes their definitions once nothing uses them anymore,
> so the driver builds after every patch.
>
> Patches 1 to 3 convert header address access and the Frame Control
> flag checks and updates.
>
> Patches 4 and 5 convert the frame type and subtype checks. Single
> comparisons use the ieee80211_is_*() helpers, and switch statements
> mask frame_control with IEEE80211_FCTL_* and use IEEE80211_STYPE_*
> case labels, the same way mac80211 does.
>
> Patch 6 removes an unused struct member. Its initialisers were the
> last users of a few private subtype constants that have no generic
> equivalent.
>
> Patch 7 converts the frame subtype setter and removes the private
> WIFI_* frame type enum.
>
> Patches 8 and 9 convert the Sequence Control, Duration/ID and QoS
> Control fields.
>
> Patch 10 replaces the driver's destination and source address
> helpers with ieee80211_get_DA() and ieee80211_get_SA().
>
> None of this should change behaviour. In the few places where a
> generic helper checks more than the code it replaces, or where the old
> macro kept bits that a plain assignment would overwrite, the commit
> message explains why the result is the same.
>
> Compile tested with W=1 after each patch, and checked with checkpatch
> and smatch. I don't have a device with this chip, so it has not been
> tested on hardware.
Did you forget the assisted-by tag for this series or did you really do
this "by hand"?
thanks,
greg k-h