[PATCH] Bluetooth: btusb: Add Realtek RTL8821CE device 13d3:3558

From: Richard Nunley via B4 Relay

Date: Sun Aug 09 2026 - 16:36:01 EST


From: Richard Nunley <richard.w.nunley@xxxxxxxxx>

The IMC Networks Bluetooth controller with USB ID 13d3:3558 uses an
RTL8821CE. Without BTUSB_REALTEK, btusb uses generic initialization and
does not load the controller firmware. BLE connections then fail before
pairing with HCI error 0x3e.

Add the device ID to the RTL8821CE table. This enables loading
rtl_bt/rtl8821c_fw.bin and rtl_bt/rtl8821c_config.bin, after which a
BLE HID keyboard pairs successfully.

Signed-off-by: Richard Nunley <richard.w.nunley@xxxxxxxxx>
---
Tested on a CachyOS 7.1.6 kernel with BlueZ 5.87 and a Corsair K65
Plus BLE keyboard.
---
drivers/bluetooth/btusb.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index be82bbbc1..2bae85b00 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -509,6 +509,8 @@ static const struct usb_device_id quirks_table[] = {
BTUSB_WIDEBAND_SPEECH },
{ USB_DEVICE(0x13d3, 0x3533), .driver_info = BTUSB_REALTEK |
BTUSB_WIDEBAND_SPEECH },
+ { USB_DEVICE(0x13d3, 0x3558), .driver_info = BTUSB_REALTEK |
+ BTUSB_WIDEBAND_SPEECH },

/* Realtek 8822CE Bluetooth devices */
{ USB_DEVICE(0x0bda, 0xb00c), .driver_info = BTUSB_REALTEK |

---
base-commit: 43a556b2fd43f2df6dded59c2e26560a27874c24
change-id: 20260809-master-aecb893ecf35

Best regards,
--
Richard Nunley <richard.w.nunley@xxxxxxxxx>