Skip to content

btusb: add MediaTek generic USB ID 0e8d:7902 to quirks_table - #21

Open
ronaldnetawat wants to merge 1 commit into
hmtheboy154:bluetooth_backportfrom
ronaldnetawat:add-mediatek-0e8d-7902
Open

btusb: add MediaTek generic USB ID 0e8d:7902 to quirks_table#21
ronaldnetawat wants to merge 1 commit into
hmtheboy154:bluetooth_backportfrom
ronaldnetawat:add-mediatek-0e8d-7902

Conversation

@ronaldnetawat

Copy link
Copy Markdown

Problem

MT7902 modules that use MediaTek's generic USB ID 0e8d:7902 (instead of an OEM-specific 13d3:xxxx ID) bind to btusb_mt7902 without the BTUSB_MEDIATEK flag, because quirks_table doesn't list that ID and this stripped-down driver no longer carries mainline's generic catch-all entry (USB_VENDOR_AND_INTERFACE_INFO(0x0e8d, 0xe0, 0x01, 0x01)).

As a result hdev->setup is never wired to the MediaTek setup path, no firmware is downloaded, and the controller stays completely mute:

Bluetooth: hci0: Opcode 0x0c03 failed: -110

hciconfig shows BD Address: 00:00:00:00:00:00, 0 RX bytes, and the adapter never comes up.

This affects at least the Minisforum UM870 Slim (and likely other mini PCs that ship MediaTek-branded MT7902 modules rather than AzureWave/IMC ones):

Bus 001 Device 006: ID 0e8d:7902 MediaTek Inc. Wireless_Device

Fix

Add 0e8d:7902 to quirks_table with BTUSB_MEDIATEK | BTUSB_WIDEBAND_SPEECH, next to the existing 0e8d:1ede entry.

Tested

Minisforum UM870 Slim (Ryzen 7 8745H), Ubuntu 22.04.5, kernel 6.8.0-134-generic (HWE), built via DKMS. With this change the firmware downloads on probe and the controller works fully (pairing, HID, audio):

Bluetooth: hci0: HW/SW Version: 0x008a008a, Build Time: 20250826211444
Bluetooth: hci0: Device setup in 2769305 usecs

🤖 Generated with Claude Code

MT7902 modules that use MediaTek's generic VID/PID (0e8d:7902), as
found in the Minisforum UM870 Slim, bind without BTUSB_MEDIATEK
because the stripped-down quirks_table only lists OEM IDs and
mainline's generic 0e8d catch-all entry was removed. Without the flag
the MediaTek setup path never runs, no firmware is downloaded and the
controller stays mute (Opcode 0x0c03 failed: -110, BD address
00:00:00:00:00:00).

Add the ID with BTUSB_MEDIATEK | BTUSB_WIDEBAND_SPEECH, matching the
neighboring 0e8d:1ede entry. Tested on a Minisforum UM870 Slim,
Ubuntu 22.04.5, kernel 6.8.0-134-generic: firmware downloads on probe
and the controller works fully.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant