[PATCH] Bluetooth: btusb: treat 0bda:0002 as a generic HCI device

From: Andrew Bille

Date: Fri Aug 14 2026 - 23:34:36 EST


The 0bda:0002 Bluetooth controller reports itself as "CSR BS8510"
and exposes a standard Bluetooth USB interface.

It currently matches the vendor-wide Realtek quirk and is therefore
initialized through btrtl. The controller does not respond to the
Realtek-specific register access and initialization fails with:

Bluetooth: hci0: RTL: RTL: Read reg16 failed (-110)

No Bluetooth controller is then available to userspace.

Add an exact match for 0bda:0002 before the generic Realtek entry so
that the device is handled as a generic USB HCI controller.

With this change the controller registers successfully. Scanning,
pairing and A2DP audio have been tested successfully.

Fixes: a2698a9bf9b0 ("Bluetooth: btusb: Add Realtek 8723A/8723B/8761A/8821A support")
Cc: stable@xxxxxxxxxxxxxxx
Assisted-by: ChatGPT:GPT-5.6-Sol
Signed-off-by: Andrew Bille <andrewbille@xxxxxxxxx>
---
drivers/bluetooth/btusb.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 184e95c1625e..fb9fdf90a3b9 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -615,6 +615,9 @@ static const struct usb_device_id quirks_table[] = {
{ USB_DEVICE(0x0489, 0xe130), .driver_info = BTUSB_REALTEK |
BTUSB_WIDEBAND_SPEECH },

+ /* CSR BS8510 device using a Realtek USB vendor ID */
+ { USB_DEVICE(0x0bda, 0x0002) },
+
/* Realtek Bluetooth devices */
{ USB_VENDOR_AND_INTERFACE_INFO(0x0bda, 0xe0, 0x01, 0x01),
.driver_info = BTUSB_REALTEK },
--
2.47.3