** Description changed: This report is related to a problem reported in IRC #ubuntu whereby (Intel 8260 Wifi) Bluetooth device cannot load its firmware file at boot time but can later. Appears to be a race condition between the wifi chipset setting up the device and enabling the attached USB interface to the Bluetooth device fully. Bluetooth: hci0: Failed to send firmware data (-38) Bluetooth: hci0: Intel reset sent to retry FW download The solution is to introduce a delay in loading the 'btusb' module: echo "install btusb /usr/bin/sleep 2; /usr/sbin/modprobe --ignore- install btusb" | sudo tee -a /etc/modprobe.d/btusb.conf This imposes a 2 second delay before the 'btusb' module is loaded. - Reporting user tells us this works around the problem + Reporting user tells us this works around the problem. + + The code responsible is net/bluetooth/hci_request.c::__hci_cmd_sync_ev() + and/or + + https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/net/bluetooth/hci_request.c#n147 + + https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/net/bluetooth/hci_request.c#n234 + + as the result of the calls: + + err = wait_event_interruptible_timeout(...) + + since only these are followed by calls to + net/bluetooth/lib.c::bt_to_errno() and that is the only function that + can return -ENOSYS (-38) + + https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/net/bluetooth/lib.c#n132 + + default: + return ENOSYS; + }
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1940332 Title: hci0: Failed to send firmware data (-38) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1940332/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs