14e4:4331 [MacBookPro10,1] bcmwl-kernel-source >= 6.30.223.30+bdcom-0ubuntu1 fails to see 5GHz networks and is unstable on 2.5GHz

Bug #1387221 reported by Michael Zanetti
66
This bug affects 12 people
Affects Status Importance Assigned to Milestone
bcmwl (Ubuntu)
Triaged
Low
Unassigned

Bug Description

1) Utopic Unicorn 14.10

2) mzanetti@noneyet ~ $ apt-cache policy bcmwl-kernel-source
bcmwl-kernel-source:
  Installed: 6.30.223.248+bdcom-0ubuntu1
  Candidate: 6.30.223.248+bdcom-0ubuntu1
  Version table:
 *** 6.30.223.248+bdcom-0ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ utopic/restricted amd64 Packages
        100 /var/lib/dpkg/status

lspci -vvnn | grep -A 9 Network
04:00.0 Network controller [0280]: Broadcom Corporation BCM4331 802.11a/b/g/n [14e4:4331] (rev 02)
        Subsystem: Apple Inc. AirPort Extreme [106b:00ef]
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 256 bytes
        Interrupt: pin A routed to IRQ 17
        Region 0: Memory at c1900000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: wl

sudo dmidecode -s bios-version
MBP101.88Z.00EE.B02.1208081132
sudo dmidecode -s bios-release-date
08/08/2012
sudo dmidecode -s system-version
1.0
sudo dmidecode -s baseboard-manufacturer
Apple Inc.
This is a MacBook Pro Retina 1st Generation

3) What is expected to happen is when one uses the bcmwl-kernel-source package in 14.10, it works on both 2.5Ghz and 5Ghz.

4) What happens instead is after upgrading to saucy or any newer release and installing bcmwl-kernel-source >=6.30.223.30+bdcom-0ubuntu1 it fails to find any 5GHz networks and connections on 2.5GHz are unstable.

Unfortunately, while b43 does detect the chip, it only uses 2.4GHz and it has very slow data rates and connection drops.

WORKAROUND: This chip is working perfectly fine on 2.5GHz and 5GHz using version 6.20.155.1+bdcom-0ubuntu6 of the driver.

Downgrading the machine to kernel 3.8.x and bcmwl-kernel-source 6.20.155.1+bdcom-0ubuntu6 (both from raring) makes the chip work again.
UPDATE: Up to kernel 3.13.0-23 a patched working package of bcmwl-kernel-source 6.20.155.1+bdcom-0ubuntu6 here: https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1387221/+attachment/4249077/+files/bcmwl-kernel-source_6.20.155.1%2Bbdcom-0ubuntu6_amd64.deb
Currently there is no way to have utopic or vivid with an up to date kernel and properly working BCM4331 chip at the same time.

Looking at the changelog its most likely caused by the update to the new upstream release in version 6.30.223.30+bdcom.

ProblemType: Bug
DistroRelease: Ubuntu 14.10
Package: bcmwl-kernel-source 6.20.155.1+bdcom-0ubuntu6
ProcVersionSignature: Ubuntu 3.16.0-23.31-generic 3.16.4
Uname: Linux 3.16.0-23-generic x86_64
NonfreeKernelModules: wl
ApportVersion: 2.14.7-0ubuntu8
Architecture: amd64
CurrentDesktop: Unity
Date: Wed Oct 29 15:26:09 2014
InstallationDate: Installed on 2012-11-10 (717 days ago)
InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Beta amd64+mac (20120926)
SourcePackage: bcmwl
UpgradeStatus: Upgraded to utopic on 2013-10-22 (372 days ago)

Revision history for this message
Michael Zanetti (mzanetti) wrote :
Revision history for this message
penalvch (penalvch) wrote :

Michael Zanetti, thank you for reporting this and helping make Ubuntu better.

1) Could you please execute the following in a terminal and post the results to this report:
lspci -vvnn | grep -A 9 Network
apt-cache policy bcmwl-kernel-source
sudo dmidecode -s bios-version
sudo dmidecode -s bios-release-date
sudo dmidecode -s system-version
sudo dmidecode -s baseboard-manufacturer

2) Regarding your Bug Description:
>"UPDATE: Up to kernel 3.13.0-23 a patched working package of bcmwl-kernel-source 6.20.155.1+bdcom-0ubuntu6 can be found in the comments of this bug report: https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1189611 ..."

Please do not make people dumpster dive for information elsewhere that should be posted in full detail in the bug description. Hence, could you please provide a click-for-click on how to implement your WORKAROUND?

3) Does using the open source b43 driver provide a WORKAROUND as outlined in https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx ?

Changed in bcmwl (Ubuntu):
importance: Undecided → Low
status: New → Incomplete
Revision history for this message
Michael Zanetti (mzanetti) wrote :

Hi Christoper,

1) Here is the requested output of a not working setup, that is, no 5GHz WiFi and slow/unstable 2.4GHz Wifi:

mzanetti@noneyet ~ $ lspci -vvnn | grep -A 9 Network
04:00.0 Network controller [0280]: Broadcom Corporation BCM4331 802.11a/b/g/n [14e4:4331] (rev 02)
        Subsystem: Apple Inc. AirPort Extreme [106b:00ef]
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 256 bytes
        Interrupt: pin A routed to IRQ 17
        Region 0: Memory at c1900000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: wl

mzanetti@noneyet ~ $ apt-cache policy bcmwl-kernel-source
bcmwl-kernel-source:
  Installed: 6.30.223.248+bdcom-0ubuntu1
  Candidate: 6.30.223.248+bdcom-0ubuntu1
  Version table:
 *** 6.30.223.248+bdcom-0ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ utopic/restricted amd64 Packages
        100 /var/lib/dpkg/status
mzanetti@noneyet ~ $ sudo dmidecode -s bios-version
MBP101.88Z.00EE.B02.1208081132
mzanetti@noneyet ~ $ sudo dmidecode -s bios-release-date
08/08/2012
mzanetti@noneyet ~ $ sudo dmidecode -s system-version
1.0
mzanetti@noneyet ~ $ sudo dmidecode -s baseboard-manufacturer
Apple Inc.

This is a MacBook Pro Retina 1st Generation, but I know of people with non-retina MacBooks and the same chip, having the same problem.

2) The workaround requires downgrading the kernel, pinning of the old driver version, will break things like overlayfs etc. I don't think a click-for-click tutorial is useful here. Someone not knowing what's going on will inevitably mess up his Ubuntu installation with this anyways. For advanced users/developers, I think the current instructions are good enough.

3) No, b43 doesn't work for this chip either. I does detect the chip, but again only 2.4GHz and very slow data rates and connection drops.

description: updated
Changed in bcmwl (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Michael Zanetti (mzanetti) wrote :

Attached a bcmwl-kernel-source package working for kernels up to 3.13.
NOTE: The version number does not reflect that this package is patched to compile against that kernel. The original package with this version does only compile up to kernel 3.8.

description: updated
penalvch (penalvch)
tags: added: regression-release saucy
description: updated
penalvch (penalvch)
description: updated
summary: - bcmwl-kernel-source >= 6.30.223.30+bdcom-0ubuntu1 fails to see 5GHz
- networks and is unstable on 2.5GHz
+ 14e4:4331 [MacBookPro10,1] bcmwl-kernel-source >=
+ 6.30.223.30+bdcom-0ubuntu1 fails to see 5GHz networks and is unstable on
+ 2.5GHz
Revision history for this message
penalvch (penalvch) wrote :

Michael Zanetti, regarding b43 not working as expected, you would want to file a new report following https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx#b43_driver so that the firmware (or other root cause) gets fixed, and allows for your chip to work as expected.

Regarding bcmwl-kernel-source, the issue you are reporting is an upstream one. Could you please report this problem to Broadcom by following the instructions _verbatim_ at https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx#Broadcom_STA_Wireless_driver ?

Thank you for your understanding.

Changed in bcmwl (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
Michael Zanetti (mzanetti) wrote :

I've contacted Broadcom as suggested on the 30th of October but didn't get a reply so far.

Revision history for this message
penalvch (penalvch) wrote :

Michael Zanetti, you may want to just call them to see if they have an internal case system you may get a tracking number for.

Revision history for this message
Andre Bogus (bogusandre) wrote :

I have added a bug with a description of a patch that fixes a possibly related null pointer crash at: https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1415880 – judging from the comments on the AUR page, it could very well solve this problem.

Revision history for this message
Brent Lintner (brent-lintner) wrote :

For what it is worth (hoping this is the right place to post), the stability issues at least, in general, were solved for me by applying the 'linux-recent.patch' from the broadcom-wl AUR tarball (which seems to include the null point fix as well):

https://aur.archlinux.org/packages/broadcom-wl/

Steps to apply it are outlined in Andre's gracious bug report (mentioned above):

https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1415880

My hardware:

controller: BCM4331 802.11a/b/g/n (rev 02)
bios version: MBP102.88Z.0106.B05.1408291503
release date: 08/29/2014

OS info:

Ubuntu 14.10
Linux 3.16.0-30-generic x86_64

Note: I've also submitted an additional email from myself to Broadcom's STA driver page contact email.

http://www.broadcom.com/support/802.11/linux_sta.php.

description: updated
penalvch (penalvch)
tags: added: vivid
Revision history for this message
Gerry Boland (gerboland) wrote :

For the record, I've a MacBook Pro 8,1 using broadcom 4331 chip. I find the bcmwl 6.30 driver consistently unreliable, packets just stop sending randomly and only solution is module unload & reload. I've had much more success (not perfect tho, but 99% reliable) with the older 6.20 driver.

I spent a little time forward porting 6.20 to vivid kernel (3.19). If you're curious, you can give it a go here:
http://people.canonical.com/~gerboland/bcmwl-kernel-source_6.20.155.1+bdcom-1ubuntu0_amd64.deb

I am back to my 99% reliable wifi as a result. If it helps you, do let me know!
-G

P.S. the package version is older than the vivid supplied one, so you'll need to pin (apt-mark hold) it to prevent it being upgraded.

Revision history for this message
Michael Zanetti (mzanetti) wrote :

Confirming that Gerry's package works fine for me on my home wifi (MacBook Pro 10,1). In Areas with a mesh of hotspots for the same network (large office) I had some system lockups with the forward-ported 6.20 driver.

Revision history for this message
Michael Zanetti (mzanetti) wrote :

As this probably won't ever get fixed, just some hint for affected people that the above package won't compile against xenial's 4.2 kernel. However, you can get working wifi in xenial by downgrading to kernel 3.19 and using Gerry's package above.

Revision history for this message
Gerry Boland (gerboland) wrote :

Hey again folks,
I've forward ported the 6.20 version of the bcmwl driver to work with Xenial, as I also find 6.30 is unusably unstable on Xenial. I'm just pushing the source here:
lp:~gerboland/+junk/bcmwl_kernel_source-6.20/
It's rough & ready, but should work.

I will put a pre-built package here for those on amd64:
http://people.canonical.com/~gerboland/xenial/bcmwl-kernel-source_6.20.155.1+bdcom-0ubuntu7_amd64.deb

Again, don't forget to apt-mark hold it, as it is older than that in the distro.
Please let me know if you've any problems
-G

Revision history for this message
Brad Landry (djbrad) wrote :

Thank you Gerry for the 6.20 driver for Xenial! I gave a second life to my mackbook 4,1 with LinuxMint 18.1 and found the 6.30 version unstable. The opensource driver was limited to non-N speeds.

I searched a full week before finding this post, thanks again!

Brad

Revision history for this message
Kevin Pulo (devkev) wrote :

I recently had the need to compile this against Linux 4.13 (from current xenial hwe-edge).

I was able to use patches 0023-add-support-for-Linux-4.11.patch and 0024-add-support-for-Linux-4.12.patch from bcmwl_6.30.223.271+bdcom-0ubuntu1~1.2 as the basis for creating 0014-add-support-for-linux-4.11.0.patch and 0015-add-support-for-linux-4.12.0.patch on top of Gerry's excellent bcmwl-kernel-source_6.20.155.1+bdcom-0ubuntu7 above.

I'm now able to run bcmwl 6.20.155.1 in Linux 4.13 on this hardware to get reasonable wifi speed, without the random system lockups that 6.30.223.271 exhibited.

The patches are attached, in case anyone has the same problem, or feels like packaging them properly (I sure don't; this is a temporary hack and I didn't even bother with DKMS: just compile, cp to new dir under /lib/modules/4.13.0-25-generic, depmod and modprobe).

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.