New: btusb device with ID 0489:e0d0 no longer working after v6.0
Subsystems (2)
https://bugzilla.kernel.org/show_bug.cgi?id=216817
Bug ID: 216817
Summary: btusb device with ID 0489:e0d0 no longer working after
v6.0
Product: Drivers
Version: 2.5
Kernel Version: 6.0, 6.0.12
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: Bluetooth
Assignee: [email protected]
Reporter: [email protected]
Regression: NoThe internal USB Bluetooth device in my laptop no longer works since v6.0
Device in question:
ID 0489:e0d0 Foxconn / Hon Hai
Works fine in 5.19.x and fails after 6.0
I ran a bisect that resulted in it breaking after this commit:26afbd826ee326e63a334c37fd45e82e50a615ec Bluetooth: Add initial implementation of CIS connections
System: Lenovo ThinkPad T14 (AMD) Gen 2
dmesg output:
[ 0.978396] usb 5-4: new full-speed USB device number 2 using xhci_hcd [ 1.142461] usb 5-4: New USB device found, idVendor=0489, idProduct=e0d0, bcdDevice= 0.01 [ 1.142467] usb 5-4: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 4.591285] Bluetooth: Core ver 2.22 [ 4.591304] Bluetooth: HCI device and connection manager initialized [ 4.591308] Bluetooth: HCI socket layer initialized [ 4.591309] Bluetooth: L2CAP socket layer initialized [ 4.591315] Bluetooth: SCO socket layer initialized [ 4.871972] usbcore: registered new interface driver btusb [ 4.883484] Bluetooth: hci0: HCI Enhanced Setup Synchronous Connection command is advertised, but not supported. [ 4.973465] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 4.973468] Bluetooth: BNEP filters: protocol multicast [ 4.973472] Bluetooth: BNEP socket layer initialized [ 4.975525] Bluetooth: hci0: unexpected cc 0x2060 length: 1 < 7 [ 4.975537] Bluetooth: hci0: Opcode 0x2060 failed: -38 [ 6.985714] Bluetooth: hci0: command tx timeout
Attached is output of lsusb -v -d 0489:e0d0
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #1 from Andrew M ([email protected]) --- Created attachment 303421
--> https://bugzilla.kernel.org/attachment.cgi?id=303421&action=edit
output of lsusb -v -d 0489:e0d0
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
The Linux kernel's regression tracker (Thorsten Leemhuis) ([email protected]) changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |[email protected]
--- Comment #2 from The Linux kernel's regression tracker (Thorsten Leemhuis) ([email protected]) --- FWIW, there is a fix for that patch that might or might not be related to your
problem (I'm not a bluetooth developer):
https://lore.kernel.org/all/[email protected]/
You also might want to check if 6.1 works, as some fixes are not backported -- and 6.0 will likely be soon EOL anyway
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #3 from Andrew M ([email protected]) --- Unfortunately it sill fails with 6.1 from Arch testing and a latest git pull (6.1.r13139.gf9ff5644bcc0) which both include that change.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
Luiz Von Dentz ([email protected]) changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |[email protected]
--- Comment #4 from Luiz Von Dentz ([email protected]) --- Looks like the command that is failing is HCI_OP_LE_READ_BUFFER_SIZE_V2:
#define HCI_OP_LE_READ_BUFFER_SIZE_V2 0x2060
Looks like the controller is marking as supported but in fact it doesn't:
/* Use Read LE Buffer Size V2 if supported */
if (hdev->commands[41] & 0x20)
return __hci_cmd_sync_status(hdev,
HCI_OP_LE_READ_BUFFER_SIZE_V2,
0, NULL, HCI_CMD_TIMEOUT);So either we introduce a quirk that must be set by the driver or we fallback to HCI_OP_LE_READ_BUFFER_SIZE if HCI_OP_LE_READ_BUFFER_SIZE_V2 is not supported, the later perhaps save us more time detecting this broken behavior since some manufacturers don't seem to even care to qualify their controllers.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #5 from Luiz Von Dentz ([email protected]) --- (In reply to Andrew M from comment #3)
Quoted 2 lines
Unfortunately it sill fails with 6.1 from Arch testing and a latest git pull (6.1.r13139.gf9ff5644bcc0) which both include that change.
Can you try with the following patch:
net/bluetooth/hci_sync.c +1 -1
@@ -3572,7 +3572,7 @@ static const struct hci_init_stage hci_init2[] = {static int hci_le_read_buffer_size_sync (struct hci_dev *hdev) {/* Use Read LE Buffer Size V2 if supported */ -if (hdev->commands[41 ] &0x20 ) +if (iso_capable (hdev) && hdev->commands[41 ] &0x20 )return __hci_cmd_sync_status (hdev,HCI_OP_LE_READ_BUFFER_SIZE_V2 ,0 ,NULL ,HCI_CMD_TIMEOUT );
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
RE: [Bug,216817] btusb device with ID 0489:e0d0 no longer working after v6.0
This is an automated email and please do not reply to this email.
Dear Submitter,
Thank you for submitting the patches to the linux bluetooth mailing list.
While preparing the CI tests, the patches you submitted couldn't be applied to the current HEAD of the repository.
----- Output -----
error: patch failed: net/bluetooth/hci_sync.c:3572
error: net/bluetooth/hci_sync.c: patch does not apply
hint: Use 'git am --show-current-patch' to see the failed patch
Please resolve the issue and submit the patches again.
---
Regards,
Linux Bluetooth
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #6 from Andrew M ([email protected]) --- (In reply to Luiz Von Dentz from comment #5)
Quoted 1 line
Can you try with the following patch
Thanks for the quick response. Tried the patch and it has solved the problem for me on both 6.1.0 and git.
I hope it makes it into 6.1.1
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #7 from Luiz Von Dentz ([email protected]) --- (In reply to Andrew M from comment #6)
Quoted 6 lines
(In reply to Luiz Von Dentz from comment #5)
Quoted 1 line
Can you try with the following patch
Thanks for the quick response. Tried the patch and it has solved the problem for me on both 6.1.0 and git.
I hope it makes it into 6.1.1
Please test with the latest version:
https://patchwork.kernel.org/project/bluetooth/patch/[email protected]/
It turns out the features are not ready if we don't change the command sequence so iso_capable would always evaluate to false.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #8 from Andrew M ([email protected]) --- (In reply to Luiz Von Dentz from comment #7)
Quoted 9 lines
(In reply to Andrew M from comment #6)
Quoted 4 lines
(In reply to Luiz Von Dentz from comment #5)
Quoted 1 line
Can you try with the following patch
Thanks for the quick response. Tried the patch and it has solved the
problem
Quoted 2 lines
for me on both 6.1.0 and git.
I hope it makes it into 6.1.1
Quoted 7 lines
Please test with the latest version:
https://patchwork.kernel.org/project/bluetooth/patch/20221219234945.3733741-
[email protected]/It turns out the features are not ready if we don't change the command sequence so
iso_capablewould always evaluate to false.
Still works. Tested v6.1 and 6.1.r13872.gb6bb9676f216
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
Mario Limonciello (AMD) ([email protected]) changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |[email protected]
--- Comment #9 from Mario Limonciello (AMD) ([email protected]) --- As this completely broke bluetooth for a number of people, can you please consider this to be sent up to 6.2-rc in a fixes PR rather than waiting for 6.3 and
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
Mario Limonciello (AMD) ([email protected]) changed:
What |Removed |Added
----------------------------------------------------------------------------
URL| |https://bugzilla.redhat.com | |/show_bug.cgi?id=2149136
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #10 from The Linux kernel's regression tracker (Thorsten Leemhuis) ([email protected]) --- (In reply to Mario Limonciello (AMD) from comment #9)
Quoted 1 line
As this completely broke bluetooth for a number of people,
Did it? Ohh, interesting.
Quoted 5 lines
can you please
consider this to be sent up to 6.2-rc in a fixes PR rather than waiting for 6.3 andCc [email protected] # 6.1
Luiz, that sounds like a reasonable request. Did you work on that front? Doesn't look like it from here, but maybe I missed something.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
--- Comment #11 from Luiz Von Dentz ([email protected]) --- Sorry for late reply, long weekend here, I will create a pull request for net so hopefully this get in the next rc.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.
[Bug 216817] btusb device with ID 0489:e0d0 no longer working after v6.0
In reply to [email protected]https://bugzilla.kernel.org/show_bug.cgi?id=216817
Mario Limonciello (AMD) ([email protected]) changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |CODE_FIX--- Comment #12 from Mario Limonciello (AMD) ([email protected]) --- As this is upstreamed as of 6.2-rc5 (3a4d29b6d631b ("Bluetooth: hci_sync: Fix use HCI_OP_LE_READ_BUFFER_SIZE_V2")) closing this issue.
The fix should trickle into 6.1.y as well.
Signature · 4 lines
You may reply to this email to add a comment. You are receiving this mail because: You are the assignee for the bug.