Unable to get wireless Broadcom BCM4313 up and running

Hi.

I have a brand new Dell Latitude with a fresh 12.1 install. I fail to get wireless working. I have searched through the forum and tried a number of things I found here but non work.

After booting dmesg reports;

linux-sac1:~ # dmesg | grep firmware
   18.654604] ieee80211 phy0: brcmsmac: fail to load firmware brcm/bcm43xx-0.fw
   18.654613] ieee80211 phy0: brcmsmac: Failed to find firmware usually in /lib/firmware/brcm

lspci gives the following info (some excluded);

linux-sac1:~ # lspci -nnk
.
.
02:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller [14e4:4727] (rev 01)
        Subsystem: Dell XPS 8300 [1028:0010]
        Kernel driver in use: bcma-pci-bridge
.
.
linux-sac1:~ # 

I tried installing firmware packages from packman (broadcom-wl and broadcom-wl-kmp-desktop), desktop since that’s what I use, see output from uname below.

linux-sac1:~ # uname -a
Linux linux-sac1.site 3.1.9-1.4-desktop #1 SMP PREEMPT Fri Jan 27 08:55:10 UTC 2012 (efb5ff4) i686 i686 i386 GNU/Linux

I also installed and ran the b43-fwcutter tool without any luck.

Now I’m out of options. Any ideas of how to proceed?

 Regards, Micke.

The packman ‘wl’ driver is your best bet
You device has poor support
b43 - Linux Wireless

Try putting the ‘wl’ packages in place again and post result of

/sbin/lspci -nnk | grep -iA2 net

Hi.

Thanks for the reply.

I continued to search the net and found this;

brcm80211 - Linux Wireless

I followed the instructions and placed bcm43xx-0.fw and bcm43xx_hdr-0.fw in /lib/firmware/brcm. Now wireless works, altough I do not know how well it works since I just started using it.

From what I understand of the information on linuxwireless.org these drivers are included in the 3.2 kernel so hopefully it will be a lot smoother next time.

 /Micke.

I am happy for you, Micke. And thanks in the name of other users of the 14e4:4727 broadcom chip for posting that you had (probably) success.

Just for the (maybe a bit stupid but) interested like me:
*
You have the firmware files bcm43xx-0.fw and bcm43xx_hdr-0.fw downloaded and copied to/in your system?
As you did not download or install any other software like a driver - the according driver should already have been there (maybe not active as it is not working without this firmware), or not?
Which driver is your wireless LAN device now using? The brcmsmac ? *
*
And what will be included in the 3.2 kernels? The firmware?*

puzzled pistazienfresser

On 02/02/2012 09:06 AM, pistazienfresser wrote:
> You have the firmware files bcm43xx-0.fw and bcm43xx_hdr-0.fw
> downloaded and copied to/in your system?
> As you did not download or install any other software like a driver -
> the according driver should already have been there (maybe not active as
> it is not working without this firmware), or not?
> Which driver is your wireless LAN device now using? The brcmsmac ? -
> -
> And what will be included in the 3.2 kernels? The firmware?-

The firmware is in the kernel-firmware package. The only thing that changes in
the 3.2 kernel is that brcmsmac continues to improve.

FYI, a lot of the code base used in brcmsmac comes from wl. If you can use
brcmsmac, you should!

Just to add that after a couple of days of digging this finally solved things for me and my Dell XPS8300 with an onboard PCIe-mini Dell wireless 1520 card (aka BCM4353). I now even see my 802.11n network!

However, the path was confusing to say the least.

First I just tried to see what would happen out of the box. Since it’s a bcm card, I didn’t have a lot of hope.

Looking through dmesg after the initial install, I saw the messages telling me to run /usr/sbin/install_bcm43xx_firmware, so I did that, and tried again. This time the dmesg messages were that it couldn’t find /lib/firmware/bcm43xx-0.fw.

I then went and tried the wl package, with the end result that the NIC disappeared alltogether (presumably it didn’t match the magic numbers any more, with the blacklisted b43, etc, drivers that wl sets up).

[Snip a day spent playing with 3 other different USB wireless cards before falling back to an rt2800usb]

I then came across this article by accident, installed the kernel-firmware package, and it’s working.

So basically the dmesg line of running install_bcm_43xx_firmware is wrong for this one particular case - maybe that script should auto-install kernel-firmware?

bypass:~ # hwinfo --wlan
14: PCI 200.0: 0282 WLAN controller                             
  [Created at pci.319]
  Unique ID: PL6s.rZtTrtjYmI1
  Parent ID: z8Q3.x2YhEdD7TS8
  SysFS ID: /devices/pci0000:00/0000:00:1c.0/0000:02:00.0
  SysFS BusID: 0000:02:00.0
  Hardware Class: network
  Model: "Broadcom WLAN controller"
  Vendor: pci 0x14e4 "Broadcom"
  Device: pci 0x4353 
  SubVendor: pci 0x1028 "Dell"
  SubDevice: pci 0x000e 
  Revision: 0x01
  Driver: "brcmsmac"
  Driver Modules: "brcmsmac"
  Device File: wlan1
  Features: WLAN
  Memory Range: 0xfb200000-0xfb203fff (rw,non-prefetchable)
  IRQ: 16 (no events)
  HW Address: 7c:e9:d3:27:10:04
  Link detected: yes
  WLAN channels: 1 2 3 4 5 6 7 8 9 10 11 36 40 44 48 52 56 60 64 100 104 108 112 116 132 136 140 149 153 157 161 165
  WLAN frequencies: 2.412 2.417 2.422 2.427 2.432 2.437 2.442 2.447 2.452 2.457 2.462 5.18 5.2 5.22 5.24 5.26 5.28 5.3 5.32 5.5 5.52 5.54 5.56 5.58 5.66 5.68 5.7 5.745 5.765 5.785 5.805 5.825
  WLAN encryption modes: WEP40 WEP104 TKIP CCMP
  WLAN authentication modes: open sharedkey wpa-psk wpa-eap
  Module Alias: "pci:v000014E4d00004353sv00001028sd0000000Ebc02sc80i00"
  Driver Info #0:
    Driver Status: brcmsmac is active
    Driver Activation Cmd: "modprobe brcmsmac"
  Driver Info #1:
    Driver Status: bcma is active
    Driver Activation Cmd: "modprobe bcma"
  Config Status: cfg=no, avail=yes, need=no, active=unknown
  Attached to: #6 (PCI bridge)

On 02/08/2012 05:56 PM, staffantj wrote:
>
> Just to add that after a couple of days of digging this finally solved
> things for me and my Dell XPS8300 with an onboard PCIe-mini Dell
> wireless 1520 card (aka BCM4353). I now even see my 802.11n network!
>
> However, the path was confusing to say the least.
>
> First I just tried to see what would happen out of the box. Since it’s
> a bcm card, I didn’t have a lot of hope.
>
> Looking through dmesg after the initial install, I saw the messages
> telling me to run /usr/sbin/install_bcm43xx_firmware, so I did that, and
> tried again. This time the dmesg messages were that it couldn’t find
> /lib/firmware/bcm43xx-0.fw.
>
> I then went and tried the wl package, with the end result that the NIC
> disappeared alltogether (presumably it didn’t match the magic numbers
> any more, with the blacklisted b43, etc, drivers that wl sets up).
>
> [Snip a day spent playing with 3 other different USB wireless cards
> before falling back to an rt2800usb]
>
> I then came across this article by accident, installed the
> kernel-firmware package, and it’s working.
>
> So basically the dmesg line of running install_bcm_43xx_firmware is
> wrong for this one particular case - maybe that script should
> auto-install kernel-firmware?

No, that script should not mess with kernel-firmware.

Your problem was indeed caused by installing wl. It does not support the
BCM4313, but it blacklists the two drivers that do. If you want to complain, you
should do it to Broadcom for distributing such a brain-dead installation process.

Hi again.

Sorry for the delay, been a bit busy.

As I said above, I got wireless working by downloading and manually copying bcm43xx-0.fw and bcm43xx_hdr-0.fw into /lib/firmware/brcm. But I soon discovered that I had picked the wrong DVD when I installed openSUSE, I ended up with a 32-bit system. By the time I had reinstalled a 64-bit system I noted the post by lwfinger. So instead of downloading firmware from the net and manually placing them in the /lib/firmware/brcm directory I simply installed the kernel-firmware package. So now I have working wireless without any “magic”!

One question though; why isn’t the kernel-firmware package installed by default?

@pistazienfresser: I think lwfinger answererd your question, right?

 Regards, Micke.

On 02/09/2012 02:56 AM, thermopyle wrote:
>
> Hi again.
>
> Sorry for the delay, been a bit busy.
>
> As I said above, I got wireless working by downloading and manually
> copying bcm43xx-0.fw and bcm43xx_hdr-0.fw into /lib/firmware/brcm. But I
> soon discovered that I had picked the wrong DVD when I installed
> openSUSE, I ended up with a 32-bit system. By the time I had reinstalled
> a 64-bit system I noted the post by lwfinger. So instead of downloading
> firmware from the net and manually placing them in the
> /lib/firmware/brcm directory I simply installed the kernel-firmware
> package. So now I have working wireless without any “magic”!
>
> One question though; why isn’t the kernel-firmware package installed by
> default?

The short answer is that “I don’t know”. In the case of brcmsmac, the firmware
situation has been changing over the past few months. Perhaps the installation
scripts have not been revised to take account of the current needs.

For the record, package kernel-firmware will take care of almost all firmware
needs. The only exceptions are those firmware files that cannot be
redistributed. Unfortunately, b43 firmware is in that category despite
considerable effort to get Broadcom to change their policy. Thus
/usr/sbin/install_bcm43xx_firmware will be with us for a long time.