Re: [PATCH 3/3] iwlwifi: Load firmware exclusively for Intel WiFi

From: JoÃo Paulo Rechi Vita
Date: Wed Jan 09 2019 - 20:29:50 EST


On Wed, Jan 9, 2019 at 10:39 AM Emmanuel Grumbach <egrumbach@xxxxxxxxx> wrote:
>
> Hello,
>
> > > > >
> > > > > our hardware teams from the Bluetooth and WiFi side really need to look at this.
> > >
> > > Were you able to get attention from the hardware teams with the logs
> > > I've provided? Are there any news or an idea of when / if we can
> > > expect this to be fixed in firmware? If not, do you have suggestions
> > > for an alternative solution?
> > >
> >
> > Sorry to bother you again with this, but I'd really like to figure out
> > some way forward here. Did you get any feedback from the hardware
> > teams? Otherwise, I understand having an inter-dependency between the
> > wifi and bt kernel modules is not desirable, so do you have any
> > suggestion on how to solve this without adding this dependency?
> >
>
> Have you tried the update the BT firmware with what is now available in
> mainline linux-firmware.git?
> I heard that this problem has now been resolved. After you update the
> BT firmware, you need a full power cycle.

Thanks for the reply. The latest firmware files I see upstream are
from commit c34a52ab7d, which are the same I had tested with
previously. I'm still able to hit the problem, but after the firmware
failed to load the Bluetooth adapter got disconnected from the USB bus
and then re-connected. Since the iwlwifi firmware loading routine had
already finished at this point, the Bluetooth firmware loaded
successfully. I had seen this behavior a few times in my previous
test, but not always (for example that behavior did not trigger on the
test I had previously shared logs for). So, maybe that is the fix that
has been implemented in the firmware? And perhaps some other changes
in the kernel where preventing that behavior from triggering all the
time? I'm pasting logs bellow where both modules where blacklisted and
manually loaded with "modprobe iwlwifi & modprobe btusb":

Jan 09 16:54:24 endless kernel: Bluetooth: Core ver 2.22
Jan 09 16:54:24 endless kernel: NET: Registered protocol family 31
Jan 09 16:54:24 endless kernel: Bluetooth: HCI device and connection
manager initialized
Jan 09 16:54:24 endless kernel: Bluetooth: HCI socket layer initialized
Jan 09 16:54:24 endless kernel: Bluetooth: L2CAP socket layer initialized
Jan 09 16:54:24 endless kernel: Bluetooth: SCO socket layer initialized
Jan 09 16:54:24 endless kernel: cfg80211: Loading compiled-in X.509
certificates for regulatory database
Jan 09 16:54:24 endless kernel: cfg80211: Loaded X.509 cert 'sforshee:
00b28ddf47aef9cea7'
Jan 09 16:54:24 endless kernel: platform regulatory.0: Direct firmware
load for regulatory.db failed with error -2
Jan 09 16:54:24 endless kernel: cfg80211: failed to load regulatory.db
Jan 09 16:54:24 endless kernel: usbcore: registered new interface driver btusb
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Bootloader revision
0.0 build 2 week 52 2014
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Device revision is 5
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Secure boot is enabled
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: OTP lock is enabled
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: API lock is enabled
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Debug lock is disabled
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Minimum firmware
build 1 week 10 2014
Jan 09 16:54:24 endless kernel: Intel(R) Wireless WiFi driver for Linux
Jan 09 16:54:24 endless kernel: Copyright(c) 2003- 2015 Intel Corporation
Jan 09 16:54:24 endless kernel: Bluetooth: hci0: Found device
firmware: intel/ibt-11-5.sfi
Jan 09 16:54:25 endless kernel: iwlwifi 0000:01:00.0: loaded firmware
version 36.7596afd4.0 op_mode iwlmvm
Jan 09 16:54:25 endless kernel: iwlwifi 0000:01:00.0: Detected
Intel(R) Dual Band Wireless AC 8260, REV=0x208
Jan 09 16:54:25 endless kernel: Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Jan 09 16:54:25 endless kernel: Bluetooth: BNEP filters: protocol multicast
Jan 09 16:54:25 endless kernel: Bluetooth: BNEP socket layer initialized
Jan 09 16:54:25 endless kernel: Bluetooth: hci0: Failed to send
firmware data (-38)
Jan 09 16:54:25 endless kernel: iwlwifi 0000:01:00.0: base HW address:
a4:34:d9:81:bf:a5
Jan 09 16:54:25 endless kernel: ieee80211 phy0: Selected rate control
algorithm 'iwl-mvm-rs'
Jan 09 16:54:25 endless kernel: thermal thermal_zone6: failed to read
out thermal zone (-61)
Jan 09 16:54:25 endless kernel: iwlwifi 0000:01:00.0 wlp1s0: renamed from wlan0
Jan 09 16:54:25 endless kernel: IPv6: ADDRCONF(NETDEV_UP): wlp1s0:
link is not ready
Jan 09 16:54:25 endless kernel: IPv6: ADDRCONF(NETDEV_UP): wlp1s0:
link is not ready
Jan 09 16:54:25 endless kernel: IPv6: ADDRCONF(NETDEV_UP): wlp1s0:
link is not ready
Jan 09 16:54:31 endless kernel: usb 1-7: USB disconnect, device number 3
Jan 09 16:54:32 endless kernel: usb 1-7: new full-speed USB device
number 7 using xhci_hcd
Jan 09 16:54:32 endless kernel: usb 1-7: New USB device found,
idVendor=8087, idProduct=0a2b, bcdDevice= 0.01
Jan 09 16:54:32 endless kernel: usb 1-7: New USB device strings:
Mfr=0, Product=0, SerialNumber=0
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Bootloader revision
0.0 build 2 week 52 2014
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Device revision is 5
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Secure boot is enabled
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: OTP lock is enabled
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: API lock is enabled
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Debug lock is disabled
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Minimum firmware
build 1 week 10 2014
Jan 09 16:54:32 endless kernel: Bluetooth: hci0: Found device
firmware: intel/ibt-11-5.sfi
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Waiting for firmware
download to complete
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Firmware loaded in
1820173 usecs
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Waiting for device to boot
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Device booted in 11761 usecs
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Found Intel DDC
parameters: intel/ibt-11-5.ddc
Jan 09 16:54:34 endless kernel: Bluetooth: hci0: Applying Intel DDC
parameters completed
Jan 09 16:54:34 endless kernel: Bluetooth: RFCOMM TTY layer initialized
Jan 09 16:54:34 endless kernel: Bluetooth: RFCOMM socket layer initialized
Jan 09 16:54:34 endless kernel: Bluetooth: RFCOMM ver 1.11

--
JoÃo Paulo Rechi Vita
http://about.me/jprvita