From: Chingbin Li liqb365@163.com
[ Upstream commit 8dbbb5423c0802ec21266765de80fd491868fab1 ]
Add VID 2b89 & PID 6275 for Realtek RTL8761BUV USB Bluetooth chip.
The information in /sys/kernel/debug/usb/devices about the Bluetooth device is listed as the below.
T: Bus=01 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 6 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=2b89 ProdID=6275 Rev= 2.00 S: Manufacturer=Realtek S: Product=Bluetooth Radio S: SerialNumber=00E04C239987 C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=500mA I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
Signed-off-by: Chingbin Li liqb365@163.com Signed-off-by: Luiz Augusto von Dentz luiz.von.dentz@intel.com Signed-off-by: Sasha Levin sashal@kernel.org ---
LLM Generated explanations, may be completely bogus:
## Commit Analysis: Bluetooth: btusb: Add new VID/PID 2b89/6275 for RTL8761BUV
### 1. COMMIT MESSAGE ANALYSIS
- **Subject:** Adding a USB VID (0x2b89) / PID (0x6275) for a Realtek RTL8761BUV Bluetooth chip - **No "Fixes:" tag** - This is not fixing a code bug - **No "Cc: stable@vger.kernel.org"** - Not explicitly tagged for stable - **Evidence of real hardware:** The commit includes detailed USB device information from `/sys/kernel/debug/usb/devices`, showing the contributor has physical access to the device
### 2. CODE CHANGE ANALYSIS
The change is minimal - just 2 lines added to `drivers/bluetooth/btusb.c`:
```c { USB_DEVICE(0x2b89, 0x6275), .driver_info = BTUSB_REALTEK | BTUSB_WIDEBAND_SPEECH }, ```
This entry: - Is added to the `quirks_table[]` array in the "Additional Realtek 8761BUV Bluetooth devices" section - Uses the exact same pattern and flags as other RTL8761BUV entries - The same vendor ID (0x2b89) already exists with a different product ID (0x8761)
### 3. CLASSIFICATION
This is a **NEW DEVICE ID** addition - one of the explicitly allowed exceptions for stable trees: - Adds a USB ID to an existing, mature driver (btusb) - The btusb driver already fully supports RTL8761BUV chips - Only the device ID is new, not any driver functionality
### 4. SCOPE AND RISK ASSESSMENT
| Factor | Assessment | |--------|------------| | Lines changed | 2 | | Files touched | 1 | | Complexity | Trivial - mechanical ID table addition | | Risk of regression | Essentially zero | | Pattern precedent | Exact same pattern used by dozens of other entries |
The risk is **extremely low** because: - The new entry cannot affect any existing devices - It only matches the specific VID/PID combination - All the handling code (BTUSB_REALTEK, BTUSB_WIDEBAND_SPEECH) is already tested with similar hardware
### 5. USER IMPACT
- **Affected users:** Anyone with a Bluetooth USB adapter using VID 0x2b89 and PID 0x6275 - **Without the patch:** The device is not recognized, Bluetooth does not work at all - **With the patch:** Full Bluetooth functionality via the mature btusb driver
This is a complete enablement fix for affected hardware.
### 6. STABILITY INDICATORS
- Signed-off-by from the Bluetooth subsystem maintainer (Luiz Augusto von Dentz) - Follows established patterns exactly - USB device info in commit shows real-world testing on actual hardware
### 7. DEPENDENCY CHECK
- **No dependencies** on other commits - The required flags (BTUSB_REALTEK, BTUSB_WIDEBAND_SPEECH) have existed for years - Will apply cleanly to all stable trees with btusb support
---
## Summary
This commit is a textbook example of a stable-appropriate device ID addition:
**Pros:** - Trivial 2-line change adding a USB VID/PID - Zero risk of regression - only affects the specific new device - Enables real hardware for users who otherwise have no Bluetooth - Follows exact pattern used by many other stable-backported device ID additions - Already merged by subsystem maintainer
**Cons:** - No explicit stable tag (but not required for device ID additions) - No Fixes: tag (appropriate - this isn't fixing broken code)
**Risk vs Benefit:** Near-zero risk with clear benefit for hardware owners.
Per the stable kernel rules, device ID additions to existing drivers are explicitly appropriate for backporting. They are small, obviously correct, fix a real user problem (hardware not working), and cannot introduce regressions.
**YES**
drivers/bluetooth/btusb.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c index 9b199da1c0d67..cc03c8c38b16f 100644 --- a/drivers/bluetooth/btusb.c +++ b/drivers/bluetooth/btusb.c @@ -785,6 +785,8 @@ static const struct usb_device_id quirks_table[] = { BTUSB_WIDEBAND_SPEECH }, { USB_DEVICE(0x2b89, 0x8761), .driver_info = BTUSB_REALTEK | BTUSB_WIDEBAND_SPEECH }, + { USB_DEVICE(0x2b89, 0x6275), .driver_info = BTUSB_REALTEK | + BTUSB_WIDEBAND_SPEECH },
/* Additional Realtek 8821AE Bluetooth devices */ { USB_DEVICE(0x0b05, 0x17dc), .driver_info = BTUSB_REALTEK },