Re: [PATCH v8] Bluetooth: btrtl: Add firmware format v3 support

From: Veysi Özgün

Date: Sat Sep 26 2026 - 10:18:40 EST


Hi Hilda,

I tested v8 on a Lenovo LOQ 15ARP10E (83S0) with the RTL8852BU
controller (0bda:b853, hci_rev 0x000b, lmp_subver 0x8852, rom_version 3).
With the current linux-firmware this controller never comes up, as
reported in [1].

Setup:
- Kernel 7.1.5 (Kali). I applied v8 to drivers/bluetooth from that
tree. The only conflict was in btusb.c (btusb_main.c upstream); I
applied the btusb_recv_event_realtek() change there by hand. btrtl.c,
btrtl.h, btrtl_enh.c and the Makefile applied as is.
- Firmware: rtl8852bd_mp_chip_new.dat from the Windows driver
18.4032.0.3008, installed unchanged as rtl_bt/rtl8852bu_fw.bin.

Result:
RTL: subsection (0000:00), chip id 20, cut 0x04, len 0000f070
RTL: subsection (0000:01), chip id 20, cut 0x04, len 00000238
RTL: subsection (0000:02), chip id 20, cut 0x04, len 00000b54
RTL: firmware section payload total len: 0x0000fdfc
RTL: Watchdog reset status 00
RTL: fw version 0x3c91950e

The controller registers with mgmt with its real BD_ADDR. I tested:
- scanning (nearby BR/EDR and LE devices show up)
- pairing and connecting a headset (Galaxy Buds4 Pro), audio over
A2DP (SBC)
- cold boot: the firmware loads from scratch and the headset reconnects
- suspend/resume (s2idle): the firmware is loaded again on resume and
the headset reconnects
There are no btusb/btrtl errors in dmesg.

This also answers my mail in [1]: v8 already implements the 0xfc62
sequence I saw in the Windows USB capture, so please ignore my
question there.

Tested-by: Veysi Özgün <veysiiozgun@xxxxxxxxx>

[1] https://lore.kernel.org/linux-bluetooth/20260926135219.13925-1-veysiiozgun@xxxxxxxxx/

Thanks,
Veysi