[PATCH AUTOSEL 7.0-6.19] wifi: rtw89: Add support for Buffalo WI-U3-2400XE2

Sasha Levin
2026-04-20T13:30:07Z

From: Zenm Chen <zenmchen@gmail.com>

[ Upstream commit aefb20749074731c4f35444761e730991f1b8c77 ]

Add the ID 0411:03a6 to the table to support an additional RTL8832CU
adapter: Buffalo WI-U3-2400XE2.

Link: https://github.com/morrownr/rtw89/commit/506d193b8cb7d6394509aebcf8de1531629f6100
Signed-off-by: Zenm Chen <zenmchen@gmail.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20260320154136.5750-1-zenmchen@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

Now I have all the information needed. Let me compile the full analysis.

---

## PHASE 1: COMMIT MESSAGE FORENSICS

**Step 1.1: Subject Line**
- Subsystem: `wifi: rtw89:`
- Action: "Add support for" (new device ID)
- Summary: Adds USB device ID 0411:03a6 for Buffalo WI-U3-2400XE2 WiFi
adapter to existing RTL8852CU driver.
- Record: [wifi: rtw89] [Add] [USB device ID for Buffalo WI-U3-2400XE2]

**Step 1.2: Tags**
- Link: GitHub commit in morrownr/rtw89 out-of-tree driver (user-
contributed)
- Signed-off-by: Zenm Chen (author), Ping-Ke Shih (rtw89 subsystem
maintainer)
- Link: patch.msgid.link for the submission
- No Fixes: tag (expected for device ID additions)
- No Reported-by / Tested-by / Reviewed-by (typical for trivial device
ID patches)
- Record: Maintainer SOB from Ping-Ke Shih confirms review.

**Step 1.3: Body Text**
- "Add the ID 0411:03a6 to the table to support an additional RTL8832CU
adapter: Buffalo WI-U3-2400XE2."
- Straightforward description, no bug symptoms, no crash, just enabling
hardware.
- Record: No bug described. This enables hardware that uses an existing
chipset/driver.

**Step 1.4: Hidden Bug Fix Detection**
- This is NOT a bug fix. It's a new device ID addition that falls into
the explicit exception category for stable.
- Record: Not a hidden bug fix; it's a device ID addition (exception
category).

## PHASE 2: DIFF ANALYSIS

**Step 2.1: Inventory**
- Files: `drivers/net/wireless/realtek/rtw89/rtw8852cu.c` (+2 lines)
- Change: Adds one entry to `rtw_8852cu_id_table[]`
- Record: Single file, +2 lines, one USB ID table entry added.

**Step 2.2: Code Flow Change**
- Before: The USB ID table has 8 entries for RTL8852CU devices.
- After: The table has 9 entries, with the new Buffalo device ID
(0x0411:0x03a6) added.
- The entry uses `USB_DEVICE_AND_INTERFACE_INFO` with the same
`rtw89_8852cu_info` driver data as all other entries.
- Record: Only change is one new ID table entry; no behavioral changes
to existing code paths.

**Step 2.3: Bug Mechanism**
- Category: Hardware enablement (device ID addition)
- No bug being fixed; this enables a new device to be recognized by the
existing driver.
- Record: [Device ID addition] [No bug; enables new hardware]

**Step 2.4: Fix Quality**
- Trivially correct: follows exact same pattern as all other entries in
the table.
- Zero regression risk: only triggers for the new VID:PID, no impact on
existing devices.
- Record: Obviously correct. No regression risk.

## PHASE 3: GIT HISTORY

**Step 3.1: Blame**
- The file was created by commit `406849000df41` in v6.19.
- Record: File introduced in v6.19.

**Step 3.2: Fixes tag**
- No Fixes: tag present. Expected for device ID additions.

**Step 3.3: File History**
- Only 2 commits to this file: initial creation (`406849000df41`) and
one prior device ID addition (`5f65ebf9aaf00` - Valve Steam Deck ID
28de:2432).
- Record: Standalone patch, no prerequisites.

**Step 3.4: Author's Commits**
- Zenm Chen has contributed multiple USB ID additions to rtw89: D-Link
VR Air Bridge (DWA-F18), MSI AX1800 Nano (GUAX18N), also to rtw88 and
btusb drivers.
- Record: Author is a regular contributor of device ID additions.

**Step 3.5: Dependencies**
- None. This is a self-contained 2-line addition to a USB ID table.
- Record: Fully standalone, no dependencies.

## PHASE 4: MAILING LIST / EXTERNAL RESEARCH

**Step 4.1: Patch Discussion**
- Lore protected by Anubis anti-bot; could not fetch directly.
- GitHub link confirmed: the same change was first applied to the
morrownr/rtw89 out-of-tree driver, confirming user validation.
- Record: Patch originated from real user contribution, validated in
out-of-tree driver.

**Step 4.2: Reviewers**
- Ping-Ke Shih (Realtek maintainer) signed off, confirming
review/acceptance.
- Record: Subsystem maintainer reviewed and accepted.

**Step 4.3-4.5: Bug Report / Related Patches / Stable History**
- No bug report (not a bug fix).
- A prior similar device ID addition (`5f65ebf9aaf00` - 28de:2432) was
already backported to 6.19.y stable as `6f055e0a78d6e`.
- Record: Precedent exists for backporting USB ID additions to this
exact file in stable.

## PHASE 5: CODE SEMANTIC ANALYSIS

**Step 5.1-5.5:**
- The change is purely data-level (adding an entry to a `const` table).
- No function modified, no code logic changed.
- The USB subsystem will match the new VID:PID and bind to the existing
`rtw89_usb_probe` function.
- Record: No code logic changes; purely declarative device ID addition.

## PHASE 6: STABLE TREE ANALYSIS

**Step 6.1: Buggy Code in Stable?**
- The file `rtw8852cu.c` was introduced in v6.19, present in 7.0.y and
6.19.y.
- Does NOT exist in older trees (6.12.y, 6.6.y, etc.).
- Record: File exists in v6.19.y and v7.0.y.

**Step 6.2: Backport Complications**
- The current tree (v7.0) has 8 entries in the table. The 6.19.y stable
has 7 entries (missing 28de:2432 which was backported separately as
`6f055e0a78d6e`).
- The patch adds the entry at the beginning of the table; it should
apply cleanly or with trivial context adjustment.
- Record: Clean apply expected (may need minor fuzz for ordering).

**Step 6.3: Related Fixes Already in Stable**
- No previous fix for this specific device (it's a new ID).
- Record: No conflicts.

## PHASE 7: SUBSYSTEM CONTEXT

**Step 7.1:** WiFi drivers - IMPORTANT subsystem. Buffalo is a well-
known consumer electronics brand.
**Step 7.2:** rtw89 is actively developed with USB support being
relatively new (v6.19+).

## PHASE 8: IMPACT AND RISK ASSESSMENT

**Step 8.1:** Affects users of Buffalo WI-U3-2400XE2 USB WiFi adapter -
without this ID, the adapter is not recognized.
**Step 8.2:** Trigger: every time the device is plugged in (100%
reproducible - device doesn't work without it).
**Step 8.3:** Failure mode without fix: hardware doesn't work at all.
Severity: HIGH for affected users.
**Step 8.4:**
- Benefit: HIGH - enables hardware for real users (the patch came from a
user contribution)
- Risk: VERY LOW - 2 lines, const data addition, cannot affect other
devices
- Ratio: Strongly favorable

## PHASE 9: FINAL SYNTHESIS

**Step 9.1: Evidence**
- FOR: Textbook device ID addition; trivially correct; 2 lines; zero
regression risk; subsystem maintainer signed off; author has track
record; precedent for same-file backports to stable; enables real
hardware for real users
- AGAINST: None identified
- UNRESOLVED: Could not fetch lore discussion due to anti-bot protection

**Step 9.2: Stable Rules Checklist**
1. Obviously correct and tested? YES - follows exact pattern of all
existing entries
2. Fixes a real bug? YES (exception category - enables hardware)
3. Important issue? YES for affected users - hardware non-functional
without it
4. Small and contained? YES - 2 lines in one file
5. No new features or APIs? YES - just a device ID
6. Can apply to stable trees? YES - file exists in 6.19.y and 7.0.y

**Step 9.3: Exception Category**
YES - this is a **new device ID addition to an existing driver**, which
is explicitly listed as an exception category that is appropriate for
stable.

## Verification

- [Phase 1] Parsed tags: Signed-off-by from rtw89 maintainer Ping-Ke
Shih
- [Phase 2] Diff analysis: +2 lines adding
USB_DEVICE_AND_INTERFACE_INFO(0x0411, 0x03a6, ...) to ID table
- [Phase 3] git show 406849000df41: confirmed file created in v6.19
- [Phase 3] git describe --contains 406849000df41: first appeared in
v6.19
- [Phase 3] git log for file: only 2 prior commits, no complex history
- [Phase 3] Author Zenm Chen: verified 5 other device ID additions in
rtw89/rtw88/btusb
- [Phase 4] GitHub link: confirmed same change validated in
morrownr/rtw89 out-of-tree driver
- [Phase 4] UNVERIFIED: Could not access lore.kernel.org discussion
(anti-bot protection)
- [Phase 5] Grep for 0x0411: Buffalo vendor ID already in rtw8852au.c
(known vendor)
- [Phase 6] git log v6.19..v6.19.12: confirmed similar ID addition
(5f65ebf9aaf00) already backported to 6.19.y stable
- [Phase 6] File exists in 7.0 and 6.19.y; does NOT exist in older trees
- [Phase 8] Risk: VERY LOW (2-line const data); Benefit: HIGH (enables
hardware)

This is a textbook USB device ID addition to an existing driver - the
most straightforward type of stable backport. It's 2 lines, trivially
correct, zero risk, enables real hardware for real users, was reviewed
by the subsystem maintainer, and there is direct precedent for identical
backports to this exact file.

**YES**

drivers/net/wireless/realtek/rtw89/rtw8852cu.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/net/wireless/realtek/rtw89/rtw8852cu.c b/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
index 3b9825c92a0d9..a485dacbb0531 100644
--- a/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
+++ b/drivers/net/wireless/realtek/rtw89/rtw8852cu.c
@@ -38,6 +38,8 @@ static const struct rtw89_driver_info rtw89_8852cu_info = {
};

static const struct usb_device_id rtw_8852cu_id_table[] = {
+ { USB_DEVICE_AND_INTERFACE_INFO(0x0411, 0x03a6, 0xff, 0xff, 0xff),
+ .driver_info = (kernel_ulong_t)&rtw89_8852cu_info },
{ USB_DEVICE_AND_INTERFACE_INFO(0x0bda, 0xc832, 0xff, 0xff, 0xff),
.driver_info = (kernel_ulong_t)&rtw89_8852cu_info },
{ USB_DEVICE_AND_INTERFACE_INFO(0x0bda, 0xc85a, 0xff, 0xff, 0xff),
--
2.53.0