# broadcom-sta kernel panic 3.6.2

## Cueball

I'm having problems with the broadcom-sta drivers. Since compiling new kernel 3.6.2 I have re-installed the broadcom-sta driver and when I run "modprobe wl" I get a kernel panic.

Through a google search i have found an Arch Linux user with exactly the same problem.

https://bbs.archlinux.org/viewtopic.php?pid=1175887

Has anyone else had this problem?

----------

## 188562

yep and thats why now on 3.6.2 i use b43

----------

## ulenrich

related Bug seems to be: https://bugs.gentoo.org/show_bug.cgi?id=437898

@init_6, a lucky man you are. My older mac-mini has:

```
lspci -nn|grep Broadcom

03:00.0 Network controller [0280]: Broadcom Corporation BCM4321 802.11a/b/g/n [14e4:4328] (rev 05)
```

Which is not included in newer opensource accomplishments regarding Broadcom wireless  :Sad: 

The weird thing is for Debian~unstable  the dkms method builds a working wl.ko for the siduction.org kernel. This kernel I can copy with its /lib/modules to my Gentoo installation, dracut an initramfs, and Broadcom wl.ko works! But with minor module dependencies as shown running

linux-image-3.6-1.towo-siduction-amd64

```
lsmod|grep wl

wl                   2593458  0

lib80211                5245  1 wl
```

 My linux-3.5.7 kernel normally shows an additional: 

```
cfg80211              187208  1 wl 
```

[edit 1] Just to disable in linux .config CFG80211 doesn't work either: 

- systemctl start wpasupplicant@wlan0 doesnt segfault the whole system any more

- But it doesn't do any connect either. Also ifconfig doesn't show up the interface wlan0 any more  :Sad: 

[edit 2] I solved my issue. Look at the bug link for my patch! It is the old wext interface possible only. My linux .config:

```
CONFIG_CFG80211=m

CONFIG_NL80211_TESTMODE=y

CONFIG_CFG80211_DEVELOPER_WARNINGS=y

# CONFIG_CFG80211_REG_DEBUG is not set

# CONFIG_CFG80211_CERTIFICATION_ONUS is not set

# CONFIG_CFG80211_DEFAULT_PS is not set

CONFIG_CFG80211_INTERNAL_REGDB=y

CONFIG_CFG80211_WEXT=y

CONFIG_LIB80211=y

CONFIG_LIB80211_CRYPT_WEP=y

CONFIG_LIB80211_CRYPT_CCMP=y

CONFIG_LIB80211_CRYPT_TKIP=y

CONFIG_LIB80211_DEBUG=y

# CONFIG_MAC80211 is not set 

ONFIG_HOSTAP=y

# CONFIG_HOSTAP_FIRMWARE is not set

# CONFIG_HOSTAP_PLX is not set

# CONFIG_HOSTAP_PCI is not set
```

----------

## 188562

 *ulenrich wrote:*   

> @init_6, a lucky man you are. My older mac-mini has:
> 
> ```
> lspci -nn|grep Broadcom
> 
> ...

 

On my 

```
lspci -nn|grep Broadcom

03:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g LP-PHY [14e4:4315] (rev 01)

```

work, all three methods: broadcom-sta, b43 and ndiswrapper. and btw now b43 look even better!

----------

## Cueball

```
02:00.0 Network controller [0280]: Broadcom Corporation BCM43227 802.11b/g/n [14e4:4358]
```

I tried the b43 drivers on my card and it doesn't load my card. The linux wireless site says it's untested.

----------

## 188562

Fix from bug #437898 help for my

```
# uname -a

Linux nemesis 3.6.2-geek #10 SMP Wed Oct 17 11:14:17 EEST 2012 x86_64 Intel(R) Pentium(R) Dual CPU T3200 @ 2.00GHz GenuineIntel GNU/Linux

# lsmod | grep wl

wl                   2550538  0 

lib80211                5320  2 wl,lib80211_crypt_tkip

```

----------

## ManDay

Could anyone sum up whether there is a solution and if so, what it is?

----------

## ulenrich

A) The best solution for me was 

- copying newer linux-firmware-nonfree from Ubuntu-12-10  

- purging broadcom-sta 

- removing blacklisting of b43

- enabling b43 kernel .config + new kernel compile

But this is my three year old Mac-mini.

B) If you need to use the extra module from broadcom-sta:

- copy the broadcom-sta ebuild tree to your local overlay

- put my ebuild in your local overlay:

https://437898.bugs.gentoo.org/attachment.cgi?id=326896

- put an extra patch in files/brodcom-sta-5.100.82.112-eth-to-wlan.patch

https://437898.bugs.gentoo.org/attachment.cgi?id=326894

- ebuild br....ebuild manifest

- emerge broadcom-sta (should be the new one, if you have done right with local overlay)

- and start with an extra option

/usr/sbin/wpa_supplicant -Dwext ...

Explanation: The wext interface is ancient and therefore not worked on in newer linux kernel releases. As a remaining stable abi "wext" should work for you in most cases.

----------

## ManDay

 *ulenrich wrote:*   

> A) The best solution for me was 
> 
> - copying newer linux-firmware-nonfree from Ubuntu-12-10  
> 
> - purging broadcom-sta 
> ...

 

Thank you for the explanation.

A) does not work for me with a BCM 43228 - The device doesn't show up in "ifconfig -a" after I modprobe b43.

B) does not work either. With kernel 3.6.4 I get a bunch of errors upon compilation:

 *Quote:*   

> /tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r9999/work/src/wl/sys/wl_linux.c:446:5: error: ‘struct net_device’ has no member named ‘wireless_handlers'

 

and others of that sort, such as

 *Quote:*   

> /tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r9999/work/src/wl/sys/wl_iw.c:2296:2: error: unknown field ‘num_private’ specified in initializer

 

Which kernel version was B) (or A), for that matter) supposed to work with?

Edit: Turns out I had to recompile the kernel with the new config before I could compile broadcom-sta

Edit: I managed to compile wl, but again, as with solution A), the interface is nowhere to be found even when wl is loaded.

Edit: After removing (I guess blacklisting would have worked, too) bcma, wlan0 shows up and works, too!

----------

## ulenrich

@ManDay,

Sounds like B) will probably work for you?

If you want to try A) as firmware no additional kernel module needs to be compiled but b43 .config!

? Have you downloaded firmware linux-firmware-nonfree-1.14 from

http://de.archive.ubuntu.com/ubuntu/pool/multiverse/l/linux-firmware-nonfree/

There should be other places available to get the new b43 firmware, I guess: somewhere kernel.org

----------

## ManDay

 *ulenrich wrote:*   

> @ManDay,
> 
> Sounds like B) will probably work for you?
> 
> If you want to try A) as firmware no additional kernel module needs to be compiled but b43 .config!
> ...

 

B) does work, yes.

I cannot parse the rest of your post, possibly because of missing punctuation.

----------

## ColinMc

 *ManDay wrote:*   

>  *ulenrich wrote:*   @ManDay,
> 
> Sounds like B) will probably work for you?
> 
> If you want to try A) as firmware no additional kernel module needs to be compiled but b43 .config!
> ...

 

Can you provide the details on how you got it to work. I have the same as you BCM43228 and I am struggling to get wireless to work. Right now I have the broadcom-sta installed, it shows wl as installed as a module, wlan0 comes up but it fails to make a connection at all to my network. Here is the link of my post: https://forums.gentoo.org/viewtopic-p-7210788.html#7210788

----------

## Cueball

ulenrich Thanks for the patch, I've only now gotten around to making it work on my laptop. Until now I was using 3.5.3.

The b43 drivers for my card will unfortunately not work with my card and it seems that the devs have now confirmed this.

```
02:00.0 Network controller [0280]: Broadcom Corporation BCM43227 802.11b/g/n [14e4:4358]
```

They now link this post from their mailing list

http://lists.infradead.org/pipermail/b43-dev/2012-August/002746.html

----------

