Bugzilla – Bug 1211763
kernel 6.3.2-1-default AX201 Bluetooth regression: Opcode errors in dmesg
Last modified: 2023-06-14 09:34:15 UTC
My bluetooth hardware stopped working with kernel 6.3.2-1. Booting to the previously installed kernel, 6.3.1-2 (yes, not a transposition) allows it to work. The firmware file has not changed (I can't find the DDC file to check, I think it may be embedded in the SFI file) Shortly after loading firmware, the following kernel messages are printed and the bluetooth device fails to function: May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Device revision is 2 May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Secure boot is enabled May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: OTP lock is enabled May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: API lock is enabled May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Debug lock is disabled May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Minimum firmware build 1 week 10 2014 May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Bootloader timestamp 2019.40 buildtype 1 build 38 May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Found device firmware: intel/ibt-0040-4150.sfi May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Boot Address: 0x100800 May 26 19:52:29 muspelheimr kernel: Bluetooth: hci0: Firmware Version: 98-13.23 May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Waiting for firmware download to complete May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Firmware loaded in 1485331 usecs May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Waiting for device to boot May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Malformed MSFT vendor event: 0x02 May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Device booted in 15774 usecs May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-0040-4150.ddc May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Applying Intel DDC parameters completed May 26 19:52:31 muspelheimr kernel: Bluetooth: hci0: Firmware timestamp 2023.13 buildtype 1 build 62562 May 26 19:52:34 muspelheimr kernel: Bluetooth: hci0: Opcode 0x204b failed: -56 May 26 19:53:10 muspelheimr kernel: Bluetooth: hci0: Opcode 0x c03 failed: -110 May 26 19:53:11 muspelheimr kernel: Bluetooth: hci0: urb 00000000194e86ae failed to resubmit (113) May 26 19:53:12 muspelheimr kernel: Bluetooth: hci0: Failed to read MSFT supported features (-110) May 26 19:53:51 muspelheimr kernel: Bluetooth: hci0: Opcode 0x c03 failed: -110 May 26 19:53:51 muspelheimr kernel: Bluetooth: hci0: MSFT extension not registered May 26 19:54:04 muspelheimr kernel: Bluetooth: hci0: Opcode 0x c03 failed: -110 May 26 19:54:04 muspelheimr kernel: Bluetooth: hci0: MSFT extension not registered May 26 19:55:26 muspelheimr kernel: Bluetooth: hci0: Opcode 0x c03 failed: -110 May 26 19:55:26 muspelheimr kernel: Bluetooth: hci0: MSFT extension not registered May 26 19:55:40 muspelheimr kernel: Bluetooth: hci0: Opcode 0x c03 failed: -110 May 26 19:55:40 muspelheimr kernel: Bluetooth: hci0: MSFT extension not registered (repeated sequence of the "Opcode 0x c03 failed" and the MSFT extension report is due to my attempting to turn the device off/on etc). Normal logs (when it works correctly) look like this: May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Device revision is 2 May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Secure boot is enabled May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: OTP lock is enabled May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: API lock is enabled May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Debug lock is disabled May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Minimum firmware build 1 week 10 2014 May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Bootloader timestamp 2019.40 buildtype 1 build 38 May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Found device firmware: intel/ibt-0040-4150.sfi May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Boot Address: 0x100800 May 13 22:02:07 muspelheimr kernel: Bluetooth: hci0: Firmware Version: 98-13.23 May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Waiting for firmware download to complete May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Firmware loaded in 1487927 usecs May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Waiting for device to boot May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Device booted in 15698 usecs May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Malformed MSFT vendor event: 0x02 May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-0040-4150.ddc May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Applying Intel DDC parameters completed May 13 22:02:08 muspelheimr kernel: Bluetooth: hci0: Firmware timestamp 2023.13 buildtype 1 build 62562 USB device IDs: idVendor 0x8087 Intel Corp. idProduct 0x0026 AX201 Bluetooth Note that the MSFT error is normal and (seems to be) harmless.
Hm, at least through a quick glance, there is no relevant change between 6.3.1 and 6.3.2 kernels about BT itself. The only change is the upstream commit d8d7ce037d9a8f1f0714ece268c4c2c50845bbc3 Revert "Bluetooth: btsdio: fix use after free bug in btsdio_remove due to un finished work" which is likely irrelevant. Please check with the latest kernel in OBS Kernel:stable repo to be sure. If the problem persists, we need to report to the upstream.
Well, the good news is the problem no longer occurs with kernel-6.3.4-1. The "bad" news is I can't replicate it with kernel-6.3.2-1 again, either. I checked my zypper history log to verify I didn't update any potentially relevant packages etc in the meantime - the only thing I had done was install 'optipng' since then, so nothing changed of relevance there. The initrd for that kernel is also still dated May 25th. I'm at a loss to explain what may have happened. I don't have any hardware buttons or switches on this besides a soft key for airplane mode (that I believe drives rfkill): https://tech-docs.system76.com/models/darp8/README.html If I should run into this sort of thing in the future, could you point me to a resource regarding the "OBS Kernel:stable repo" you requested I check with? I've never used OBS - the kernel-6.3.4-1 I checked before writing this response is from https://download.opensuse.org/tumbleweed/repo/oss/. That way I can save a little bother and only proceed with the report if I can replicate with whatever is current from that source.
The package is available at: http://download.opensuse.org/repositories/Kernel:/stable/standard/ Note that it's an unofficial build, hence it won't boot with Secure Boot easily.
So, I'm inclined to close this as WONTFIX, as the issue seems sporadic and likely a firmware problem we can't fix in our side. If you can reproduce the problem reliably, better to report it to the upstream.
Let's close now. Feel free to reopen if you have a proper way of bug reproduction.