I have Ubuntu 12.10 on my Macbook Pro, which has BCM4331 for wifi. It's been working fairly well, except I've been having a problem that the connection will randomly stop working. Ubuntu still says I'm connected, but if I try pinging an address I get 100% dropped packets. I have to disconnect and reconnect to get it working again.
other question I decided to see if I could solve this, and found this answer, which is for the BCM4313, but I thought might also work for 4331. I removed the b43-fwcutter package, which was installed on my system, and am trying to get it to use the brcmsmac driver, but it's not working. After removing the b43-fwcutter package, I haven't been able to connect to the internet at all. I did "sudo modprobe brcmsmac" and it's showing it enabled in lsmod:
colin@MacBookPro:~$ lsmod | grep brc
brcmsmac 531905 0
mac80211 540032 2 brcmsmac,b43
bcma 35657 2 brcmsmac,b43
brcmutil 14756 1 brcmsmac
cfg80211 206797 3 brcmsmac,b43,mac80211
cordic 12575 1 brcmsmac
However, lspci shows bcma being used:
03:00.0 Network controller: Broadcom Corporation BCM4331 802.11a/b/g/n (rev 02)
Subsystem: Broadcom Corporation BCM4331 802.11a/b/g/n
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at b0600000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: bcma-pci-bridge
Kernel modules: bcma
The thing is, I have "blacklist bcma" in my /etc/modprobe.d/blacklist.conf, so I don't know why it's still using it. That lspci output is exactly what was shown when I had my wireless working, but now that I've removed the b43-fwcutter package, it isn't functional. I found another question which does recommend b43-fwcutter, and that one is specifically for a Mac product with BCM4331, rather than BCM4313.
So is b43-fwcutter the best option, and I just have to live with these disconnects, or are there other things I can try?