From: Zenm Chen zenmchen@gmail.com
[ Upstream commit 2ffc73cdb8247dc09b6534c4018681a126c1d5f5 ]
Add USB ID 2001:332a for D-Link AX9U rev. A1 which is a RTL8851BU-based Wi-Fi adapter.
Only managed mode and AP mode are tested and it works in both.
Signed-off-by: Zenm Chen zenmchen@gmail.com Acked-by: Ping-Ke Shih pkshih@realtek.com Signed-off-by: Ping-Ke Shih pkshih@realtek.com Link: https://patch.msgid.link/20250902035755.1969530-1-zenmchen@gmail.com Signed-off-by: Sasha Levin sashal@kernel.org ---
LLM Generated explanations, may be completely bogus:
YES
- Scope of change: Adds a single USB device ID for a new RTL8851BU-based adapter; no logic changes. In `drivers/net/wireless/realtek/rtw89/rtw8851bu.c:19-21`, the new entry `USB_DEVICE_AND_INTERFACE_INFO(0x2001, 0x332a, 0xff, 0xff, 0xff)` is added with `.driver_info = (kernel_ulong_t)&rtw89_8851bu_info`, matching the existing pattern used for other 8851BU dongles (e.g., `0x3625:0x010b` and `0x7392:0xe611` in the same table at `drivers/net/wireless/realtek/rtw89/rtw8851bu.c:22-27`). - Containment: The id table is used only for device matching via the driver’s `usb_driver` definition (`.id_table = rtw_8851bu_id_table` at `drivers/net/wireless/realtek/rtw89/rtw8851bu.c:32-36`). Probe/disconnect paths remain unchanged and continue to call the existing generic handlers `rtw89_usb_probe`/`rtw89_usb_disconnect`. - Risk assessment: Extremely low. It only expands the alias table so the driver binds to a device already supported by the RTL8851B/USB code path. The interface match uses `USB_DEVICE_AND_INTERFACE_INFO(..., 0xff, 0xff, 0xff)`, consistent with other entries, limiting binding to the intended vendor-specific interface and avoiding unintended grabs. - User impact: High practical value. Without the ID, the D-Link AX9U rev. A1 (VID:PID 2001:332a) will not bind to the driver, leaving users without Wi‑Fi. Adding the ID “fixes” a real-world non-working device scenario common to stable policy. - Architectural impact: None. No new features or behavior changes; no changes to `rtw89_usb_probe` implementation or the rtw89 core. The probe path remains the same (`drivers/net/wireless/realtek/rtw89/usb.c:932` onward). - Cross-subsystem consistency: The same VID:PID is already recognized on the Bluetooth side (`drivers/bluetooth/btusb.c:526` shows `USB_DEVICE(0x2001, 0x332a)` under 8851BU Realtek BT), which is typical for combo devices. The Wi‑Fi ID addition aligns Wi‑Fi binding with the already-supported BT interface. - Stable criteria fit: This is a minimal, contained enablement/fix with negligible regression risk, no architectural changes, and clear user benefit. While the commit message has no explicit “Cc: stable”, device ID additions like this are routinely accepted for stable when the driver exists in the target tree.
Note: Backport applicability depends on the target stable branch having the rtw89 RTL8851BU driver (`rtw8851bu.c`) and RTL8851B support already present. If absent, the change is N/A for that branch.
drivers/net/wireless/realtek/rtw89/rtw8851bu.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/net/wireless/realtek/rtw89/rtw8851bu.c b/drivers/net/wireless/realtek/rtw89/rtw8851bu.c index c3722547c6b09..04e1ab13b7535 100644 --- a/drivers/net/wireless/realtek/rtw89/rtw8851bu.c +++ b/drivers/net/wireless/realtek/rtw89/rtw8851bu.c @@ -16,6 +16,9 @@ static const struct rtw89_driver_info rtw89_8851bu_info = { static const struct usb_device_id rtw_8851bu_id_table[] = { { USB_DEVICE_AND_INTERFACE_INFO(0x0bda, 0xb851, 0xff, 0xff, 0xff), .driver_info = (kernel_ulong_t)&rtw89_8851bu_info }, + /* D-Link AX9U rev. A1 */ + { USB_DEVICE_AND_INTERFACE_INFO(0x2001, 0x332a, 0xff, 0xff, 0xff), + .driver_info = (kernel_ulong_t)&rtw89_8851bu_info }, /* TP-Link Archer TX10UB Nano */ { USB_DEVICE_AND_INTERFACE_INFO(0x3625, 0x010b, 0xff, 0xff, 0xff), .driver_info = (kernel_ulong_t)&rtw89_8851bu_info },