Bug 218472
Summary: | mt7921e bluetooth not working | ||
---|---|---|---|
Product: | Drivers | Reporter: | Chris (bugzilla) |
Component: | Bluetooth | Assignee: | linux-bluetooth (linux-bluetooth) |
Status: | NEW --- | ||
Severity: | normal | CC: | jeremy53561 |
Priority: | P3 | ||
Hardware: | Other | ||
OS: | Linux | ||
Kernel Version: | Subsystem: | ||
Regression: | No | Bisected commit-id: |
Description
Chris
2024-02-08 20:09:35 UTC
What's the output of `sudo rfkill`? (In reply to Artem S. Tashkinov from comment #1) > What's the output of `sudo rfkill`? [root@geekom ~]# rfkill ID TYPE DEVICE SOFT HARD 0 bluetooth hci0 unblocked unblocked 1 wlan phy0 unblocked unblocked I have a similar/same device and it's working fine here. Kernel 6.7.4 + latest firmware. No idea what's going on. (In reply to Artem S. Tashkinov from comment #3) > I have a similar/same device and it's working fine here. > > Kernel 6.7.4 + latest firmware. > > No idea what's going on. Thank you for taking a look anyway. Which Linux + version are you using? Do you get the 'Opcode 0x0c03 failed' and 'Port 007: Dev 005, If 2, Class=Wireless, Driver=[none], 480M' with the commands above? > Which Linux + version are you using? Your problem is solely with the kernel. It doesn't matter which distro I use (that's Fedora but I have/use my own kernel config). > Do you get ... Nope, nothing. Using git log find the person(s) who contribute to/write this driver and send them all this info. The way kernel bugzilla is set up, many respective developers never get a wind of what's being discussed here, so they are simply not aware. You should post results from terminal for sudo cat /sys/kernel/debug/usb/devices| awk '/3585/' RS= The bluetooth devs usually want that info. I am guessing that you will need a kernel patch similar to https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/drivers/bluetooth/btusb.c?id=f0ad26ee822b197f2421462df9c358a5687fddfd but it would be at about line 610 of btusb.c and be { USB_DEVICE(0x13d3, 0x3585), .driver_info = BTUSB_MEDIATEK | BTUSB_WIDEBAND_SPEECH | BTUSB_VALID_LE_STATES }, (In reply to jeremy from comment #6) > You should post results from terminal for > sudo cat /sys/kernel/debug/usb/devices| awk '/3585/' RS= > > The bluetooth devs usually want that info. I am guessing that you will need > a kernel patch similar to > https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/ > commit/drivers/bluetooth/btusb.c?id=f0ad26ee822b197f2421462df9c358a5687fddfd > but it would be at about line 610 of btusb.c and be > > { USB_DEVICE(0x13d3, 0x3585), .driver_info = BTUSB_MEDIATEK | > BTUSB_WIDEBAND_SPEECH | > BTUSB_VALID_LE_STATES }, Thanks Jeremy. I compiled btusb.c with that change and it works. For completeness, here's the requested output of sudo cat /sys/kernel/debug/usb/devices| awk '/3585/' RS= T: Bus=03 Lev=01 Prnt=01 Port=06 Cnt=04 Dev#= 5 Spd=480 MxCh= 0 D: Ver= 2.10 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=13d3 ProdID=3585 Rev= 1.00 S: Manufacturer=MediaTek Inc. S: Product=Wireless_Device S: SerialNumber=000000000 C:* #Ifs= 3 Cfg#= 1 Atr=e0 MxPwr=100mA A: FirstIf#= 0 IfCount= 3 Cls=e0(wlcon) Sub=01 Prot=01 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=125us E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms E: Ad=03(O) 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=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms E: Ad=03(O) 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=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms E: Ad=03(O) 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=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms E: Ad=03(O) 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=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms E: Ad=03(O) 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=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms I: If#= 1 Alt= 6 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb E: Ad=83(I) Atr=01(Isoc) MxPS= 63 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 63 Ivl=1ms I:* If#= 2 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none) E: Ad=8a(I) Atr=03(Int.) MxPS= 64 Ivl=125us E: Ad=0a(O) Atr=03(Int.) MxPS= 64 Ivl=125us I: If#= 2 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=(none) E: Ad=8a(I) Atr=03(Int.) MxPS= 512 Ivl=125us E: Ad=0a(O) Atr=03(Int.) MxPS= 512 Ivl=125us |