Description of problem: Bluetooth adapter for my cheap ezbook2 notebook does not work. A look into the $ dmesg | grep brcm showd me that the file /usr/lib/firmware/brcm/BCM4343A0.hcd could not be found. Version-Release number of selected component (if applicable): linux-firmware 20180815 How reproducible: restart and get no bluetooth Steps to Reproduce: 1. 2. 3. Actual results: I found a similar here: https://gitlab.com/TeeFirefly/FireNow-Marshmallow/blob/061bdfd4bdd7cce2fe55e1013f3d3f23de7603ca/vendor/rockchip/common/bluetooth/lib/firmware/4343A0.hcd and had to rename it and copied it to firmware directory. Anyway there is still a message, i do not unterstand: $ dmesg | grep brcm [ 87.377565] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430a0-sdio for chip BCM43430/0 [ 87.377726] usbcore: registered new interface driver brcmfmac [ 87.529661] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430a0-sdio for chip BCM43430/0 [ 87.529848] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430a0-sdio.clm_blob failed with error -2 [ 87.529866] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available [ 87.534899] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/0 wl0: May 29 2017 00:03:43 version 7.13.53.9 (r664949) FWID 01-130000 There is still a missing brcm/brcmfmac43430a0-sdio.clm. Expected results: running bluetooth Additional info:
Created attachment 1494418 [details] bluetooth diagnosis Earlier in 2018 bluetooth was pairing for fc27 successfully to several devices. I have not used bluetooth for several months but tried it yesterday. With bluetooth on no bluetooth devices are even being displayed. Other bluetooth devices are displaying and pairing to the devices the fc27 bluetooth will not. All the diagnostics in in the attached file. The issue appears to be the same as the Broadcome WIFI issue, the driver is not loading. The wifi solution was to blacklist the Broadcom b43 driver as this driver is now being included in the Fedora build. I would expect that the solution to this bug is to blacklist the incorrect bluetooth driver that is loading before the driver my bluetooth uses. At a higher level where where is the website that I can submit a change requests to the linux kernel? The current practice of including "dead" code in the kernel does not only make supporting linux more expensive to support than Windows it is also is a quality control issue as many companies have corporate QA policies that forbid any "dead" code in computers.
Bluetooth sill not working using the latest fc27 kernel 4.18.16-100.fc27.x86_64 #1 SMP Sun Oct 21 09:33:00 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux The boot sequence looks up the device and determines the required driver then looks for it at /lib/firware/brcm. (or maybe /usr/lib/firmware/brcm. One would think that these 2 directories would be linked. But no they are copies of each other wasting disk space and confusing users when dirver problems arise. Its been like 10 years since Linux created /lib/modules for kenels and /lib/firmware for device drivers.) [EB30750@BRSINC-01Fed ~]$ dmesg | grep -i blue [ 4.310114] Bluetooth: Core ver 2.22 [ 4.310138] Bluetooth: HCI device and connection manager initialized [ 4.310143] Bluetooth: HCI socket layer initialized [ 4.310145] Bluetooth: L2CAP socket layer initialized [ 4.310152] Bluetooth: SCO socket layer initialized [ 4.461162] Bluetooth: hci0: BCM: chip id 70 [ 4.464128] Bluetooth: hci0: BCM: features 0x06 [ 4.482146] Bluetooth: hci0: BCM43142A [ 4.485130] Bluetooth: hci0: BCM43142A0 (001.001.011) build 0000 [ 4.485515] bluetooth hci0: Direct firmware load for brcm/BCM43142A0-0a5c-216d.hcd failed with error -2 [ 4.485519] Bluetooth: hci0: BCM: Patch brcm/BCM43142A0-0a5c-216d.hcd not found It is clear that this driver is in this directory as shown below. In previous kernels is was necessary to copy the firmware driver file to BCM.hcd. I did this just to be sure (in both /lib/... & /usr/lib/... directories) but this solution no longer works. The firmware driver did not load before I made this change either. The directory /user/lib/firmware/brcm is the same as /lib/firmware/brcm [EB30750@BRSINC-01Fed brcm]$ cd /lib/firmware/brcm [EB30750@BRSINC-01Fed brcm]$ ls -l total 16836 -rw-r--r-- 1 root root 54734 Oct 15 08:30 BCM-0bb4-0306.hcd -rw-r--r-- 1 root root 208583 Aug 18 2017 BCM43142A0-0a5c-216c.hcd -rw-r--r-- 1 root root 269595 Oct 15 08:30 bcm4329-fullmac-4.bin -rw-r--r-- 1 root root 96224 Oct 15 08:30 bcm43xx-0.fw -rw-r--r-- 1 root root 180 Oct 15 08:30 bcm43xx_hdr-0.fw -rw-r--r-- 1 root root 208583 Oct 27 10:04 BCM.hcd -rw-r--r-- 1 root root 29618 Oct 27 10:03 BCM.hcd.old -rw-r--r-- 1 root root 397312 Oct 15 08:30 brcmfmac43143.bin At this point this is a driver load issue. Maybe kernel loading helper (udev?) is not forming the correct path or something. Broadcom wireless users have not a fully functional kernel since like March.
It appears the Fedora (Linux) broken bluetooth has to due with loading the firmware to the Broadcom chip. "Broadcom bluetooth chips require a tool called patchram uploader [1] to load firmware. This applies to at least BCM20702 and BCM43142. Although some of the devices have an OTPROM that contains required firmware, but it is found that these devices would not have HFP/HSP support unless a upgraded firmware is loaded via patchram uploader." From https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1065400 dated 2012-10-11. This error indicates (word Patch) that the application patchram cannot be located [ 4.485519] Bluetooth: hci0: BCM: Patch brcm/BCM43142A0-0a5c-216d.hcd not found bluetooth modules loaded [root@BRSINC-01Fed brcm]# lsmod | grep -i blue bluetooth 593920 41 btrtl,btintel,btbcm,bnep,btusb,rfcomm ecdh_generic 24576 2 bluetooth rfkill 28672 8 hp_wmi,bluetooth,cfg80211 I have searched my system and there is no such application patchram found. I have not upgraded my system which might have deleted this application. There are some indications that this software is old and is only needed by older Broadcom chips. This contradicts the leading statement above but it is a 6 year old post I believe the changes starting with kernel 4.17 that also broke Broadcom wifi using wl also broke blutetooth in a simlar manner. SSB prior to 4.17 was a module but starting in 4.17 the config file was changed to compile it directly into the kernel. See bug 1572349. This broke Broadcom wifi until the admin blacklisted the bcma module. There must be another kernel bluetooth compile option that was changed reverted the build to enable the use of patchram to upload the Broadcom bluetooth firmware. There simply no evidence that the patchram application was ever on my system.
SOLVED The best I can deduce is that the latest fc27 kernel resolved this bug. 4.18.16-100.fc27.x86_64 This bug was due to the bluttooth firmware not getting loaded The previous bluetooth firmware BCM43142A0-0a5c-216c.hcd needed to be updated to BCM43142A0-0a5c-216d.hcd. The former file size is 208583 and the latter 29618 so obviously there was some kernel driver changes. The bluetooth output from dmesg has a few added lines than the previous kernels dmesg outputs. 1) The solution is to upgrade to the the 4.18.16 kernel, 2) Download the proper Broadcom firmware version for (mine is BCM43142) that is displayed in the dmesg bluetooth -2 error 3) reboot
This message is a reminder that Fedora 28 is nearing its end of life. On 2019-May-28 Fedora will stop maintaining and issuing updates for Fedora 28. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '28'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 28 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 28 changed to end-of-life (EOL) status on 2019-05-28. Fedora 28 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.