Broadcom 43224 on OpenSuSE 11.3

I know this is a re-hash, but I can’t see what is missing in order to get my wireless card working …

So here are the details:

HP ProBook 6545b
uname -a:
Linux linux-vo3e 2.6.34.7-0.7-desktop #1 SMP PREEMPT 2010-12-13 11:13:53 +0100 x86_64 x86_64 x86_64 GNU/Linux

lspci:
09:00.0 Network controller: Broadcom Corporation BCM43224 802.11a/b/g/n (rev 01)

lspci -n
09:00.0 0280: 14e4:4353 (rev 01)

lspci -nnk:
09:00.0 Network controller [0280]: Broadcom Corporation BCM43224 802.11a/b/g/n [14e4:4353] (rev 01)
Subsystem: Hewlett-Packard Company Device [103c:1509]

no firmware messages in dmesg

iwconfig:
desktop:/ # iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

pan0 no wireless extensions.

desktop:/ # ifconfig
eth0 Link encap:Ethernet HWaddr 70:5A:B6:97:AB:31
inet addr:10.1.101.39 Bcast:10.1.101.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:41942 errors:0 dropped:0 overruns:0 frame:0
TX packets:15485 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11765051 (11.2 Mb) TX bytes:3612909 (3.4 Mb)
Interrupt:16

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:77 errors:0 dropped:0 overruns:0 frame:0
TX packets:77 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:5392 (5.2 Kb) TX bytes:5392 (5.2 Kb)

pan0 Link encap:Ethernet HWaddr E2:ED:BB:28:4C:3E
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:256 (256.0 b)

I read about the possibility of the bluetooth killing the radio on a particular version of the Broadcom cards, but not sure if that applies to mine or not.

I added packman to my repositories and added the firmware and driver from there, but I’m thinking it’s either I have the wrong driver for my kernel version or the radio isn’t on.

Thanks for any assistance.

Did you follow this
Install Broadcom Drivers from Packman

Actually, I added Packman via yast.

zypper lr -d:
linux-vo3e:/ # zypper lr -d

| Alias | Name | Enabled | Refresh | Priority | Type | URI

–±------------------------------------±------------------------------------±--------±------±-------±------±--------------------------------------------------
1 | OpenSuSE_11.3 | OpenSuSE 11.3 | Yes | No | 99 | yast2 | iso:///?iso=openSUSE-11.3-DVD-x86_64.iso&url=file:///windows/D/download/ |
2 | Updates for openSUSE 11.3 11.3-1.82 | Updates for openSUSE 11.3 11.3-1.82 | Yes | Yes | 99 | rpm-md | Index of /update/11.3 |
3 | ftp.uni-erlangen.de-suse | Packman Repository | Yes | Yes | 99 | rpm-md | Index of /pub/mirrors/packman/suse/11.3/ |
4 | repo-debug | openSUSE-11.3-Debug | No | Yes | 99 | NONE | http://download.opensuse.org/debug/distribution/11.3/repo/oss/|
5 | repo-non-oss | openSUSE-11.3-Non-Oss | Yes | Yes | 99 | yast2 | Index of /distribution/11.3/repo/non-oss |
6 | repo-oss | openSUSE-11.3-Oss | Yes | Yes | 99 | yast2 | Index of /distribution/11.3/repo/oss |
7 | repo-source | openSUSE-11.3-Source | No | Yes | 99 | NONE | http://download.opensuse.org/source/distribution/11.3/repo/oss/|

rpm -qa | grep broadcom looks like this after the installation of the driver:

desktop:/ # rpm -qa | grep broadcom
broadcom-wl-5.60.246.2-7.pm.8.2.x86_64
broadcom-wl-kmp-default-5.60.246.2_k2.6.34.7_0.7-7.pm.8.2.x86_64

Just noticed that the desktop rpm driver is not installed, so I removed the default and added desktop. I’m closer now because it sees the NIC, but as eth1…

It doesn’t matter how it is called really. Run this as root to check if it works :

iwlist scan

Also one remark AFAIK You either need firmware or the closed source broadcom-wl driver. Wile using the firmware You don’t need the closed source driver and it works with every kernel however some of the broadcom cards won’t work while using the firmware and they require the closed source driver. (don’t know about your specific card but You can find the info on this forum)

Best regards,
Greg

On 01/07/2011 04:36 PM, glistwan wrote:
>
> dlietz;2275246 Wrote:
>> Just noticed that the desktop rpm driver is not installed, so I removed
>> the default and added desktop. I’m closer now because it sees the NIC,
>> but as eth1…
> It doesn’t matter how it is called really. Run this as root to check
> if it works :
>
> Code:
> --------------------
> iwlist scan
> --------------------
> Also one remark AFAIK You either need firmware or the closed source
> broadcom-wl driver. Wile using the firmware You don’t need the closed
> source driver and it works with every kernel however some of the
> broadcom cards won’t work while using the firmware and they require the
> closed source driver. (don’t know about your specific card but You can
> find the info on this forum)

As the thread clearly says, he has the closed-source driver, which does not need
external firmware. If it does not connect, there is likely a configuration problem.

The naming of the interface is controlled by the rules in
/etc/udev/rules.d/70-persistent-net.rules. There is no problem with it being
called eth1.

You should have:

desktop:/ # rpm -qa | grep broadcom
broadcom-wl-5.60.246.2-7.pm.8.2.x86_64
broadcom-wl-kmp-desktop-5.60.246.2_k2.6.34.7_0.7-7.pm.8.2.x86_64

One you have the correct packages, then you need to configure your connection in network manager.

I am also having this issue on my HP Mini Netbook. I have been working on this for days, and I am just shy of giving up. Strangely enough, it worked under Kubuntu with no problems. Worked strangely out of the box, then normally after installing 3rd party driver through their driver tool. But I like OpenSUSE better, though it is more difficult. I’m geekier than anybody else I know, but this is beyond the scope of my experience.


collectNWData.sh V0.6.5.1-7a (Rev: 1.276, Build: 2010/12/12 13:05:44 UTC)
--- Which type of your network connection should be tested?
--- (2) Wireless connection (WLAN)
--- What's the type of networktopology?
--- (2) WLAN HW router <---> LinuxClient
--- On which host is the script executed?
--- (1) LinuxClient
--- WLAN SSID to connect to: §§§§§§§§1

--- NWEliza is analyzing the system for common network configuration errors ...

!!! CND0360E: Wireless connection tested with an existing wired connection on interface eth0. Unplug the cable and execute the script again

--- Go to http://www.linux-tips-and-tricks.de/CND#English to get more detailed instructions 
--- about the error/warning messages and how to fix the problems on your own.

--- If you are unsuccessful then place the contents of file collectNWData.txt in the net
--- (see http://www.linux-tips-and-tricks.de/CND_UPL#English for links) 
--- and then paste the nopaste link on your favorite Linux forum.

==================================================================================================================
===== cat /etc/*-_]release || cat /etc/*-_]version =============================================================
/etc/SuSE-release
openSUSE 11.3 (i586)
VERSION = 11.3
===== uname -a ===================================================================================================
Linux MiniSUSE.site 2.6.34-12-default #1 SMP 2010-06-29 02:39:08 +0200 i686 i686 i386 GNU/Linux
===== lspci ======================================================================================================
00:0a.0 Ethernet controller [0200]: nVidia Corporation MCP79 Ethernet [10de:0ab0] (rev b1)
	Subsystem: Hewlett-Packard Company Device [103c:3651]
	Kernel driver in use: forcedeth
--
03:00.0 Network controller [0280]: Broadcom Corporation BCM43224 802.11a/b/g/n [14e4:4353] (rev 01)
	Subsystem: Hewlett-Packard Company Device [103c:1509]
===== lsusb | grep -v "root hub" =================================================================================
Bus 001 Device 003: ID 03f0:201d Hewlett-Packard 
Bus 002 Device 002: ID 0408:0ff1 Quanta Computer, Inc. 
Bus 003 Device 002: ID 03f0:231d Hewlett-Packard 
===== hwinfo (filtered) ==========================================================================================
21: PCI 0a.0: 0200 Ethernet controller
  Model: "nVidia MCP79 Ethernet"
  Vendor: pci 0x10de "nVidia Corporation"
  Device: pci 0x0ab0 "MCP79 Ethernet"
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x3651 
  Driver: "forcedeth"
  Driver Modules: "forcedeth"
  Device File: eth0
  Link detected: yes
    Driver Status: forcedeth is active
    Driver Activation Cmd: "modprobe forcedeth"
27: PCI 300.0: 0280 Network controller
  Model: "Broadcom Network controller"
  Vendor: pci 0x14e4 "Broadcom"
  Device: pci 0x4353 
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x1509 
    Driver Status: brcm80211 is active
    Driver Activation Cmd: "modprobe brcm80211"
===== lsmod (filtered) ===========================================================================================
| ac              | af_packet       | ahci            | bnep            | brcm80211        |
| btusb           | cfg80211        | drm             | drm_kms_helper  | ehci_hcd         |
| forcedeth       | fscache         | fwload          | hp_wmi          | hwmon            |
| i2c_algo_bit    | i2c_core        | i2c_nforce2     | ip_tables       | jbd2             |
| l2cap           | libata          | llc             | lp              | mac80211         |
| mperf           | nouveau         | ohci_hcd        | output          | pci_hotplug      |
| ppdev           | qcserial        | rfcomm          | rfkill          | sco              |
| scsi_mod        | sd_mod          | sg              | shpchp          | speedstep_lib    |
| sr_mod          | st              | stp             | ttm             | usbserial        |
| v4l1_compat     | vmblock         | vmsync          | wmi             |
===== ls /lib/firmware/* =========================================================================================
| 2.6.34-12-default       | 2.6.34-12-desktop       | 2.6.34.7-0.7-desktop    | 3CCFEM556.cis            |
| 3com                    | 3CXEM556.cis            | acenic                  | adaptec                  |
| advansys                | agere_ap_fw.bin         | agere_sta_fw.bin        | aic94xx-seq.fw           |
| aica_firmware.bin       | ar9170-1.fw             | ar9170-2.fw             | ar9271.fw                |
| asihpi                  | ath3k-1.fw              | ath3k-2.fw              | atmel_at76c502_3com.bin  |
| atmel_at76c502_3com-wpa.bin| atmel_at76c502.bin      | atmel_at76c502d.bin     | atmel_at76c502d-wpa.bin  |
| atmel_at76c502e.bin     | atmel_at76c502e-wpa.bin | atmel_at76c502-wpa.bin  | atmel_at76c503-i3861.bin |
| atmel_at76c503-i3863.bin| atmel_at76c503-rfmd-0.90.2-140.bin| atmel_at76c503-rfmd-acc.bin| atmel_at76c503-rfmd.bin  |
| atmel_at76c504_2958-wpa.bin| atmel_at76c504a_2958-wpa.bin| atmel_at76c504.bin      | atmel_at76c504c-wpa.bin  |
| atmel_at76c505a-rfmd2958.bin| atmel_at76c505-rfmd2958.bin| atmel_at76c505-rfmd.bin | atmel_at76c506.bin       |
| atmel_at76c506-wpa.bin  | av7110                  | b43                     | BCM2033-FW.bin           |
| BCM2033-MD.hex          | bfubase.frm             | bnx2                    | bnx2x-e1-4.8.53.0.fw     |
| bnx2x-e1-5.2.7.0.fw     | bnx2x-e1h-4.8.53.0.fw   | bnx2x-e1h-5.2.7.0.fw    | cis                      |
| COMpad2.cis             | COMpad4.cis             | cpia2                   | cxgb3                    |
| dabusb                  | digiface_firmware.bin   | digiface_firmware_rev11.bin| DP83903.cis              |
| dsp56k                  | dvb-fe-xc5000-1.6.114.fw| dvb-ttpci-01.fw         | dvb-ttpci-01.fw-2622     |
| dvb-usb-dib0700-1.20.fw | e100                    | ea                      | E-CARD.cis               |
| edgeport                | emagic                  | emi26                   | emi62                    |
| emu                     | ess                     | f2255usb.bin            | GPL-3                    |
| i2400m-fw-usb-1.3.sbcf  | i2400m-fw-usb-1.4.sbcf  | ipw2100-1.3.fw          | ipw2100-1.3-i.fw         |
| ipw2100-1.3-p.fw        | ipw2200-bss.fw          | ipw2200-ibss.fw         | ipw2200-sniffer.fw       |
| ipw-2.2-boot.fw         | ipw-2.2-bss.fw          | ipw-2.2-bss_ucode.fw    | ipw-2.2-ibss.fw          |
| ipw-2.2-ibss_ucode.fw   | ipw-2.3-boot.fw         | ipw-2.3-bss.fw          | ipw-2.3-bss_ucode.fw     |
| ipw-2.3-ibss.fw         | ipw-2.3-ibss_ucode.fw   | ipw-2.3-sniffer.fw      | ipw-2.3-sniffer_ucode.fw |
| ipw-2.4-boot.fw         | ipw-2.4-bss.fw          | ipw-2.4-bss_ucode.fw    | ipw-2.4-ibss.fw          |
| ipw-2.4-ibss_ucode.fw   | ipw-2.4-sniffer.fw      | ipw-2.4-sniffer_ucode.fw| iwlwifi-1000-3.ucode     |
| iwlwifi-3945-2.ucode    | iwlwifi-4965-2.ucode    | iwlwifi-5000-1.ucode    | iwlwifi-5000-2.ucode     |
| iwlwifi-5150-2.ucode    | iwlwifi-6000-4.ucode    | iwlwifi-6050-4.ucode    | kaweth                   |
| keyspan                 | keyspan_pda             | korg                    | LA-PCM.cis               |
| lgs8g75.fw              | libertas                | LICENCE.agere           | LICENCE.atheros_firmware |
| LICENCE.i2400m          | LICENCE.iwlwifi_firmware| LICENCE.libertas        | LICENCE.mwl8k            |
| LICENCE.qla2xxx         | LICENCE.ralink-firmware.txt| LICENCE.ueagle-atm4-firmware| LICENCE.xc5000           |
| LICENSE.dib0700         | LICENSE.ipw2200-fw      | LICENSE.ipw2x00         | LICENSE.radeon_rlc       |
| matrox                  | microcode.dat           | mixart                  | MT5634ZLX.cis            |
| mts_mt9234mu.fw         | mts_mt9234zba.fw        | multiface_firmware.bin  | multiface_firmware_rev11.bin |
| mwl8k                   | myricom                 | NE2K.cis                | ositech                  |
| PCMLM28.cis             | pcxhr                   | PE-200.cis              | PE520.cis                |
| ql2100_fw.bin           | ql2200_fw.bin           | ql2300_fw.bin           | ql2322_fw.bin            |
| ql2400_fw.bin           | ql2500_fw.bin           | qlogic                  | r128                     |
| radeon                  | RS-COM-2P.cis           | rt2561.bin              | rt2561s.bin              |
| rt2661.bin              | rt2860.bin              | rt2870.bin              | rt3070.bin               |
| rt3071.bin              | rt3090.bin              | rt73.bin                | RTL8192E                 |
| s2250.fw                | s2250_loader.fw         | sb16                    | slicoss                  |
| STLC2500_R4_00_03.ptc   | STLC2500_R4_00_06.ssf   | STLC2500_R4_02_02_WLAN.ssf| STLC2500_R4_02_04.ptc    |
| sun                     | sxg                     | tamarack.cis            | tehuti                   |
| tigon                   | ttusb-budget            | ueagle-atm              | usbdux                   |
| usbduxfast_firmware.bin | usbdux_firmware.bin     | v4l-cx231xx-avcore-01.fw| v4l-cx23418-apu.fw       |
| v4l-cx23418-cpu.fw      | v4l-cx23418-dig.fw      | v4l-cx23885-avcore-01.fw| v4l-cx23885-enc.fw       |
| v4l-cx25840.fw          | vicam                   | vx                      | yam                      |
| yamaha                  | zd1211                  |
--- /lib/firmware
| lp0bsinitvals16.fw      | lp0initvals16.fw        | n0bsinitvals16.fw       | n0initvals16.fw          |
| sslpn0bsinitvals16.fw   | sslpn0initvals16.fw     | ucode16.fw              |
===== ifconfig (filtered for eth|wlan|ra|ath|dsl) ================================================================
eth0      Link encap:Ethernet  HWaddr ##:##:##:##:##:#1  
          inet addr:192.168.1.75  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::ca0a:a9ff:fec2:4bd1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8059 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4991 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4352837 (4.1 Mb)  TX bytes:824961 (805.6 Kb)
          Interrupt:21 Base address:0xc000 
===== iwconfig ===================================================================================================
lo        no wireless extensions.
eth0      no wireless extensions.
pan0      no wireless extensions.
===== cat /etc/sysconfig/network/ifcfg-[earwd]* | grep -v "=''" ==================================================
ls: cannot access /etc/sysconfig/network/ifcfg-[earwd]*: No such file or directory
===== iwlist scanning ============================================================================================
No WLANs found
===== ndiswrapper -l =============================================================================================
No ndiswrapper module loaded
===== Active processes ===========================================================================================
wpa_supplicant:YES knetworkmanager:YES nm-applet:NO
===== ===== egrep -i "persistent|networkmanager" /etc/sysconfig/network/config | grep -v "^#|^$" =================
NETWORKMANAGER="yes"
===== dhcpcd-test ================================================================================================
===== ping tests =================================================================================================
Ping of 195.135.220.3 OK
Ping of www.suse.de OK
===== cat /etc/resolv | grep -i "nameserver" =====================================================================
nameserver 192.168.1.254
===== cat /etc/hosts =============================================================================================
127.0.0.1	localhost.localdomain	localhost
127.0.0.2       MiniSUSE.site MiniSUSE
===== route -n | egrep "(eth|ath|ra|wlan|dsl)" ===================================================================
192.168.1.0     0.0.0.0         255.255.255.0   U     1      0        0 eth0
0.0.0.0         192.168.1.254   0.0.0.0         UG    0      0        0 eth0
===== Actual date for bias of following greps ====================================================================
04:31:27 2011-01-09
===== grep -i radio /var/log/messages* | tail -n 5 ===============================================================
===== dmesg | grep -i radio | tail -n 5 ==========================================================================
===== tail -n 300 /var/log/messages* | /usr/bin/grep -i firmware | tail -n 10 ====================================
===== egrep 'eth|ath|wlan|ra' /etc/udev/rules.d/*net_persistent* /etc/udev/rules.d/*persistent-net* ==============
/etc/udev/rules.d/70-persistent-net.rules:SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="##:##:##:##:##:#1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
/etc/udev/rules.d/70-persistent-net.rules:SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="##:##:##:##:##:#2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
/etc/udev/rules.d/70-persistent-net.rules:SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="##:##:##:##:##:#2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
===== egrep -r 'eth[0-10]|ath[0-10]|wlan[0-10]|ra[0-10]' /etc/modprobe.*|egrep -v -i '#|backlist' ================
==================================================================================================================
*** NWElizaStates V0.6.5.1-7a
IF:eth0 IM:1 DI:1 AP:0 FALON:1 NI:1 cNI:1 NDIS:0 CM:0 IP6:0 KM:0 WLW:eth0 1 RTDT:SuSE 

Did You try following this guide ? http://forums.opensuse.org/forums/english/get-technical-help-here/how-faq-forums/unreviewed-how-faq/446861-install-broadcom-drivers-packman.html

Best regards,
Greg

Yup, once I got the desktop driver installed, and several reboots along the way uninstalling and reinstalling, the machine was able to see the NIC. I then renamed it to wlan0 by editing the etc/udev/rules.d/70-persistent-net.rules.

Now my only issue is that it doesn’t seem to turn on and off using the radio button on the laptop. If I boot the machine with the radio on it works fine, but if I turn off the radio and turn it back on, the card stops functioning. ifconfig still shows the card, it just never gets an IP address and Network Manager options are unresponsive. I have to reboot the system to get the wireless NIC working again. Anyone have ideas on why this would be happening?

Also, just so I’m clear is there documentation somewhere that indicates which wireless NIC’s require the closed source driver and which will work with the firmware alone?

Thanks all for the assistance.

I am able to choose in my BIOS:

  1. WLAN always on when starting/booting
  2. WLAN always off when starting/booting
  3. The same status as when the laptop was turned off

I do not have any problems with option 3) turned on but maybe (if you have options alike that) you can try it with option 1) ?

Good luck
pistazienfresser

I do not clame that it would be a clear documentation but maybe the links and the discussion on Install Broadcom Drivers from Packman in post #6 (=post2264457) will help - especially the table on b43 #Known PCI devices - Linux Wireless. Please be avare that (as I understood the issue) the PCI ID (not the device’s name) will be the (more) acurate way to distinguish the different hardware and so maybe the best fitting driver(s).

Good luck
pistazienfresser

On 01/11/2011 08:36 AM, pistazienfresser wrote:
>
> dlietz;2276586 Wrote:
>> …]
>> Also, just so I’m clear is there documentation somewhere that indicates
>> which wireless NIC’s require the closed source driver and which will
>> work with the firmware alone?
>> …].
> I do not clame that it would be a clear documentation but maybe the
> links and the discussion on ‘Install Broadcom Drivers from Packman’
> (http://tinyurl.com/4z5jmq2) in post #6 (=post2264457) will help -
> especially the table on ‘b43 #Known PCI devices - Linux Wireless’
> (http://wireless.kernel.org/en/users/Drivers/b43#Known_PCI_devices).
> Please be avare that (as I understood the issue) the PCI ID (not the
> device’s name) will be the (more) acurate way to distinguish the
> different hardware and so maybe the best fitting driver(s).

In the wiki at
http://wireless.kernel.org/en/users/Drivers/b43#Known_PCI_devices, we try to
keep the table up to date. As stated above, the name does not mean anything,
only the PCI IDs are important. They are what the kernel uses in loading drivers.

If a given device is listed as working with b43 or b43legacy, then only the
firmware is needed.