2

I have a laptop with a Broadcom Wireless Adapter (BCM43455) that I would like to dual-boot with Ubuntu and Windows, however, whilst it have no problems with Windows, regardless of whether I run a liveCD or install it Ubuntu refuses to recognise my Wifi Adapter.

I have tried lspci -vnn, lshw and lsusb (just to be safe), all as root, but none of them show anything even network related.

Ubuntu doesn't show any additional (proprietary) drivers that it could install either, and while there is a question about Broadcom Adapters not working in general here, all of the answers assume that you can see the device listed in lshw and lspci but just can't use it.

What can I do about this?

EDIT: Here is the output of dmesg | grep -i sdio, as requested:

[   25.471246] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.txt failed with error -2

[   26.497372] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50

[   27.503492] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50
5
  • 1
    Is it an SDIO device? Please show: dmesg | grep -i sdio
    – chili555
    Feb 5 '18 at 20:00
  • @chili555 Well, in theory it is a PCIe Device, however it is available in an SDIO version too.. I honestly haven't a clue which my laptop uses. I'll add the output of dmesg | grep -i sdio to the question in a minute Feb 5 '18 at 20:22
  • @chili555 Sorry it took so long, my 14.04 installation had absolutely no output, so I decided to replace it with 16.04 to see if that changes. Feb 6 '18 at 15:05
  • It's strange that it wants brcm*.txt as the driver brcmfmac usually wants brcm*.bin. We wonder if you have brcmfmac43455-sdio.bin on your system. Please edit your question to add the result of: sudo dpkg -s linux-firmware | grep Version and also: sudo updatedb && locate brcmfmac43455-sdio
    – chili555
    Feb 6 '18 at 16:46
  • Also edit to include results for ls /sys/firmware/efi/efivars | grep nvram
    – Jeremy31
    Feb 8 '18 at 22:09
5

The issue is that it cannot find your brcm/brcmfmac43455-sdio.txt file. For me, this issue happened on the CSL Narrow Box 4k. I've experimented a lot with many solutions found on the web, but the following finally did the trick:

  1. Download the text file.
  2. Copy it into your device's /lib/firmware/brcm/ folder.
  3. Reboot.

Now the system should be able to find the missing file and WiFi should work as expected.

Note: I've only tested this using a patched Ubuntu image generated by the isorespin.sh script. The steps described above may or may not work on an un-patched image.

Edit: A colleague of mine has tested it on a regular Ubuntu MATE image, it works. So there's no need to use the isorespin.sh at all!

0

This is an SDIO device not PCIe. The missing NVRAM definition file is board-dependent. You can see that the kernel firmware includes this file for some boards. Also note that BCM43455 is a newer version of BCM4345, sometimes known as AP6255; I happen to have the older version and is supported by brcmfmac driver.

On a Wintel MiniPC (AMI, T3 MRD, Atom x5-Z8350) running Windows 10, the file is found at C:\Windows\System32\drivers\4345r6nvram.txt and can be copied to Linux, then do:

sudo cp 4345r6nvram.txt /lib/firmware/brcm/
cd /lib/firmware/brcm/
ln -s 4345r6nvram.txt brcmfmac43455-sdio.txt
sudo modprobe -r brcmfmac
sudo modprobe brcmfmac

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.