linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: Gongwei Li <ligongwei@kylinos.cn>,
	Luiz Augusto von Dentz <luiz.von.dentz@intel.com>,
	Sasha Levin <sashal@kernel.org>,
	marcel@holtmann.org, luiz.dentz@gmail.com,
	linux-bluetooth@vger.kernel.org
Subject: [PATCH AUTOSEL 6.18-5.10] Bluetooth: btusb: Add new VID/PID 13d3/3533 for RTL8821CE
Date: Mon,  8 Dec 2025 19:15:01 -0500	[thread overview]
Message-ID: <20251209001610.611575-9-sashal@kernel.org> (raw)
In-Reply-To: <20251209001610.611575-1-sashal@kernel.org>

From: Gongwei Li <ligongwei@kylinos.cn>

[ Upstream commit 525459da4bd62a81142fea3f3d52188ceb4d8907 ]

Add VID 13d3 & PID 3533 for Realtek RTL8821CE 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=00 Cnt=01 Dev#=  2 Spd=12   MxCh= 0
D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=13d3 ProdID=3533 Rev= 1.10
S:  Manufacturer=Realtek
S:  Product=Bluetooth Radio
S:  SerialNumber=00e04c000001
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: Gongwei Li <ligongwei@kylinos.cn>
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 13d3/3533 for
RTL8821CE

### 1. COMMIT MESSAGE ANALYSIS

**Subject:** Adding a new USB Vendor ID (0x13d3) and Product ID (0x3533)
for a Realtek RTL8821CE Bluetooth chip.

**Tags present:**
- No "Fixes:" tag
- No "Cc: stable@vger.kernel.org" tag
- Signed-off-by from contributor and Bluetooth maintainer (Luiz Augusto
  von Dentz)

**Key content:** The commit includes detailed USB device information
showing this is a real, tested device from the
`/sys/kernel/debug/usb/devices` output.

### 2. CODE CHANGE ANALYSIS

The diff shows a simple 2-line addition:

```c
/* Realtek 8821CE Bluetooth devices */
{ USB_DEVICE(0x13d3, 0x3529), .driver_info = BTUSB_REALTEK |
                                             BTUSB_WIDEBAND_SPEECH },
+{ USB_DEVICE(0x13d3, 0x3533), .driver_info = BTUSB_REALTEK |
+                                            BTUSB_WIDEBAND_SPEECH },
```

- Adds USB device entry with VID 0x13d3, PID 0x3533
- Uses **identical** flags as the existing RTL8821CE entry (0x13d3,
  0x3529)
- Placed directly under the "Realtek 8821CE Bluetooth devices" comment
- Follows established table pattern exactly

### 3. CLASSIFICATION

This is a **NEW DEVICE ID** addition - one of the explicit exceptions
for stable backports:

> "Adding PCI IDs, USB IDs, ACPI IDs, etc. to existing drivers. These
are trivial one-line additions that enable hardware support."

The btusb driver already fully supports RTL8821CE devices; this just
adds a new variant's USB ID to the match table.

### 4. SCOPE AND RISK ASSESSMENT

| Metric | Assessment |
|--------|------------|
| Lines changed | 2 lines added |
| Files touched | 1 file (drivers/bluetooth/btusb.c) |
| Complexity | Trivial - table entry only |
| Risk | **Extremely low** - purely additive |

**Risk analysis:**
- Cannot break existing functionality (new table entry only)
- Uses same driver_info flags as sibling device
- Only affects users with this specific USB hardware
- If somehow wrong, worst case is Bluetooth doesn't work for this device
  (no worse than before)

### 5. USER IMPACT

- **Affected users:** Those with laptops/devices containing this
  Bluetooth chip variant
- **Current behavior:** Bluetooth device not recognized by btusb driver
- **Fixed behavior:** Bluetooth works normally
- **Severity:** Hardware enablement - critical for affected users
- **Evidence of real use:** Detailed USB device tree dump proves this is
  real, tested hardware

### 6. STABILITY INDICATORS

- Proper maintainer sign-off (Luiz Augusto von Dentz, Intel Bluetooth
  maintainer)
- Matches exact pattern of existing entries
- Same flags as the sibling 8821CE entry (0x13d3/0x3529)

### 7. DEPENDENCY CHECK

- **Dependencies:** None - completely standalone table entry
- **Prerequisite code:** RTL8821CE support (BTUSB_REALTEK,
  BTUSB_WIDEBAND_SPEECH) already exists in stable trees
- **Applies cleanly:** The quirks_table structure has been stable for a
  long time

## Summary

This commit is a textbook example of the "NEW DEVICE ID" exception for
stable backports:

**Reasons to backport:**
1. Trivial 2-line USB ID table addition
2. Zero risk of regression to existing functionality
3. Enables Bluetooth for users with this specific hardware variant
4. Follows established, well-tested patterns exactly
5. No dependencies on other commits
6. Driver already fully supports this chip family

**Minor consideration:**
- No explicit "Cc: stable" tag, but device ID additions are routinely
  backported without it

The fix is small, surgical, and follows an explicit exception in stable
kernel rules for device ID additions.

**YES**

 drivers/bluetooth/btusb.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 9a923918bf741..b92bfd131567e 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -504,6 +504,8 @@ static const struct usb_device_id quirks_table[] = {
 	/* Realtek 8821CE Bluetooth devices */
 	{ USB_DEVICE(0x13d3, 0x3529), .driver_info = BTUSB_REALTEK |
 						     BTUSB_WIDEBAND_SPEECH },
+	{ USB_DEVICE(0x13d3, 0x3533), .driver_info = BTUSB_REALTEK |
+						     BTUSB_WIDEBAND_SPEECH },
 
 	/* Realtek 8822CE Bluetooth devices */
 	{ USB_DEVICE(0x0bda, 0xb00c), .driver_info = BTUSB_REALTEK |
-- 
2.51.0


       reply	other threads:[~2025-12-09  0:16 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20251209001610.611575-1-sashal@kernel.org>
2025-12-09  0:15 ` Sasha Levin [this message]
2025-12-09  0:15 ` [PATCH AUTOSEL 6.18-6.12] Bluetooth: btusb: Add new VID/PID 0x0489/0xE12F for RTL8852BE-VT Sasha Levin
2025-12-09  0:15 ` [PATCH AUTOSEL 6.18-6.12] Bluetooth: btusb: MT7920: Add VID/PID 0489/e135 Sasha Levin
2025-12-09  0:15 ` [PATCH AUTOSEL 6.18-6.12] Bluetooth: btusb: MT7922: Add VID/PID 0489/e170 Sasha Levin
2025-12-09  0:15 ` [PATCH AUTOSEL 6.18-6.17] Bluetooth: btusb: add new custom firmwares Sasha Levin
2025-12-09  0:15 ` [PATCH AUTOSEL 6.18-6.6] Bluetooth: btusb: Add new VID/PID 2b89/6275 for RTL8761BUV Sasha Levin
     [not found] <20251206140252.645973-1-sashal@kernel.org>
2025-12-06 14:02 ` [PATCH AUTOSEL 6.18-5.10] Bluetooth: btusb: Add new VID/PID 13d3/3533 for RTL8821CE Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251209001610.611575-9-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=ligongwei@kylinos.cn \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=luiz.dentz@gmail.com \
    --cc=luiz.von.dentz@intel.com \
    --cc=marcel@holtmann.org \
    --cc=patches@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).