Broadcom STA driver gets autoinstalled on BCM4313, where it's no longer needed

Bug #1306928 reported by Rohan "HEXcube" Villoth
34
This bug affects 5 people
Affects Status Importance Assigned to Milestone
jockey (Ubuntu)
Precise
Fix Released
Medium
Alberto Milone
ubuntu-drivers-common (Ubuntu)
Fix Released
High
Alberto Milone
Trusty
Fix Released
High
Alberto Milone

Bug Description

SRU request:

== 14.04 ==

[Impact]

Ubuntu 14.04 ships with a good open replacement for the proprietary driver, which seems to work on many systems that were quietly dropped by the proprietary driver. We should default to the open driver. This will only affect 14.04.1.

[Test Case]

1) If the broadcom driver is already installed, make sure to remove it:

sudo apt-get --purge remove bcmwl-kernel-source

Then reboot.

2) Test the automatic installation using the following command:

ubuntu-drivers autoinstall

and make sure that ubuntu-drivers does not install the broadcom driver

[Regression Potential]

It should be minimal (and affect only 14.04.1). The open broadcom driver should already work out of the box.

Furthermore the test suite now covers this test case.

== 12.04 ==

[Impact]

Kernel versions higher than 3.11 ship with a good open replacement for the proprietary driver, which seems to work on many systems that were quietly dropped by the proprietary driver. We should default to the open driver when this is the case. This will only affect 12.04.5.

[Test Case]

1) If the broadcom driver is already installed, make sure to remove it:

sudo apt-get --purge remove bcmwl-kernel-source

Then reboot.

2) Make sure that "linux-generic-lts-trusty" is installed:

sudo apt-get install linux-generic-lts-trusty

And reboot.

3) Test the automatic installation using the following command:

jockey-text --auto-install

and make sure that Jockey does not install the broadcom driver

[Regression Potential]

It should be minimal (and affect only 12.04.5). The open broadcom driver should already work out of the box.

Furthermore the test suite now covers this test case.

== Description ==

The propreitory driver Broadcom STA (packaged as 'bcmwl-kernel-source', provides 'wl' kernel module) gets autoinstalled upon Ubuntu 12.04.4 installation on systems with Broadcom BCM4313 (14e4:4727) wireless cards. Upto Ubuntu 12.04.3 with 3.8 kernel, this was good behaviour. But, with 3.11 kernel used in Ubuntu 13.10 and Ubuntu 12.04.4, the official open source 'brcmsmac' driver had improved (with the newly implemented AdHoc and AP mode, and other improvements) over propreitory 'wl'. On newer kernel versions, 'brcmsmac' works better than 'wl'.
    Autoinstalling the 'wl' driver would actually be a "downgrade" of functionality. I understand that there are some cards work only with 'wl', but it's better not to do autoinstall of 'bcmwl-kernel-source' on the ones supported by 'brcmsmac'. It maybe offered on the jockey Additional Drivers list, though I don't see any reason why anyone would prefer 'wl' over 'brcmsmac' now. I don't know if this issue remains on Ubuntu 14.04LTS's jockey merged with 'ubuntu-drivers' package. But, if it does that has to be fixed too. I hope this issue is fixed soon, so that Ubuntu 12.04.5 is released with the fixed jockey.

tags: added: 12.04.4
tags: added: 14.04
Changed in ubuntu-drivers-common (Ubuntu):
status: New → Triaged
Changed in jockey (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Changed in ubuntu-drivers-common (Ubuntu):
importance: Undecided → Medium
Changed in jockey (Ubuntu):
assignee: nobody → Alberto Milone (albertomilone)
Changed in ubuntu-drivers-common (Ubuntu):
assignee: nobody → Alberto Milone (albertomilone)
description: updated
Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

In my case, I need to install linux-firmware-nonfree instead of bcmwl-kernel-source to enable the WiFi.
http://paste.ubuntu.com/7320852/ is the output of dmesg, and it is why I know linux-firmware-nonfree can fix my problem.

Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

BTW, `ubuntu-drivers list` can also find linux-firmware-nonfree.
It looks like http://paste.ubuntu.com/7320967/.

Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

@Shih-Yuan Lee Your BCM4321 (14e4:4328) also used bcmwl-kernel-source in kernels before 3.11, but now works better with linux-firmware-nonfree. I found this in http://askubuntu.com/questions/55868/how-to-install-broadcom-wireless-drivers-bcm43xx/60395#60395. That post is kinda a one stop place for everything on Broadcom driver installation in Linux. I wish the Broadcom guys did a more complete listing of cards and drivers for Linux.

Revision history for this message
Romain Fluttaz (botux) wrote :

On 14.04 we need to manually remove bcmwl-kernel-source, and use brcmsmac.
Just for informations :

Remove bcmwl and install linux-firmware-nonfree :
sudo apt-get purge bcmwl-kernel-source
sudo apt-get install linux-firmware-nonfree

Then you need to blacklist b43 and wl :
echo "blacklist b43" | sudo tee -a /etc/modprobe.d/blacklist.conf
echo "blacklist wl" | sudo tee -a /etc/modprobe.d/blacklist.conf

sudo modprobe -r b43 wl brcmsmac
sudo modprobe brcmsmac

And reboot.

Changed in jockey (Ubuntu Trusty):
status: New → Invalid
Changed in ubuntu-drivers-common (Ubuntu Trusty):
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Alberto Milone (albertomilone)
importance: Medium → High
Changed in ubuntu-drivers-common (Ubuntu):
importance: Medium → High
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello HEXcube, or anyone else affected,

Accepted jockey into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/jockey/0.9.7-0ubuntu7.15 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-drivers-common (Ubuntu Precise):
status: New → Invalid
Changed in jockey (Ubuntu Precise):
importance: Undecided → Medium
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

I did the test case on my Ubuntu 12.04.4 with linux-generic-lts-saucy kernel 3.11.0-18. I didn't install linux-generic-lts-trusty as instructed in the SRU test case coz brcmsmac works good for all kernels above v3.10 which includes the saucy kernel too. So, I installed jockey and jockey-common version 0.9.7-0ubuntu7.15 and ran the following command:

jockey-text --auto-install

It didn't install bcmwl-kernel-source. So, iguess this solves the problem. But, i still have to test with the updated kernel. So, i'm not marking this as verified.

Boyuan Deng (bryandeng)
Changed in jockey (Ubuntu Trusty):
status: Invalid → Confirmed
Revision history for this message
Boyuan Deng (bryandeng) wrote :

Hi all:

Thank all of you for this bug report. Finally I got BCM4313 [14e4:4727] running on my Dell Precision M4600 with Ubuntu 14.04 LTS.
I just ran "sudo apt-get --purge remove bcmwl-kernel-source", then WLAN is OK.

One more question:
I didn't install "linux-firmware-nonfree", but "lsmod" told me I have the module b43, is this normal ?
(Though in my situation b43 need not to be blacklisted.)

Revision history for this message
Boyuan Deng (bryandeng) wrote :

More information for developers:

[ 3.804708] Support for cores revisions 0x17 and 0x18 disabled by module param allhwsupport=0. Try b43.allhwsupport=1
[ 3.804757] b43: probe of bcma0:0 failed with error -524
[ 3.807420] Broadcom 43xx driver loaded [ Features: PNL ]
[ 3.857258] brcmsmac bcma0:0: mfg 4bf core 812 rev 24 class 0 irq 17

Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

@bryandeng Ubuntu 14.04 uses the package 'ubuntu-drivers-common' instead of 12.04's 'jockey'. That is why jockey and 'ubuntu-drivers-common' are marked invalid for Trusty and Precise respectively. You shouldn't have changed it.
I'm also using BCM4313 which from 3.10 kernel onwards works better with the open source brcmsmac driver in kernel. No need to install 'linux-firmware-nonfree'. Doing lspci shows b43 in my case too, but I don't know if it should be blacklisted.

Changed in jockey (Ubuntu Trusty):
status: Confirmed → Invalid
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-drivers-common - 1:0.2.92.2

---------------
ubuntu-drivers-common (1:0.2.92.2) utopic; urgency=medium

  * gpu-manager.c:
    - Revert switch to the intel driver from modesetting until
      some issues are fixed.
 -- Alberto Milone <email address hidden> Mon, 28 Apr 2014 18:37:02 +0200

Changed in ubuntu-drivers-common (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

I have verified `jockey-text --auto-install` from precise-proposed and it won't install bcmwl-kernel-source on linux-generic-lts-trusty.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

Sorry, I made a mistake.
I have verified `jockey-text --auto-install` from precise-proposed and it won't install bcmwl-kernel-source on linux-generic-lts-saucy.

tags: added: verification-needed
removed: verification-done
description: updated
description: updated
Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

Verified 0.9.7-0ubuntu7.15 from precise-proposed with linux-generic-lts-trusty. And I blacklisted b43 driver using

echo "blacklist b43" | sudo tee -a /etc/modprobe.d/blacklist.conf

to stop some messages displayed at startup/boot plymouth splash

Changed in jockey (Ubuntu):
status: Triaged → Fix Committed
tags: added: verification-done
removed: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello HEXcube, or anyone else affected,

Accepted ubuntu-drivers-common into trusty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/ubuntu-drivers-common/1:0.2.91.6 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-drivers-common (Ubuntu Trusty):
status: In Progress → Fix Committed
tags: removed: verification-done
tags: added: verification-needed
Revision history for this message
Mathew Hodson (mhodson) wrote :

Package in precise-proposed was verified in comment #13.

tags: added: verification-done-precise
Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

Tested and verified ubuntu-drivers-common version 1:0.2.91.6 from trusty-proposed. Works as expected - doesn't install bcmwl-kernel-source package. Gives the following output :

No drivers found for automatic installation.

tags: added: verification-done-trusty
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-drivers-common - 1:0.2.91.6

---------------
ubuntu-drivers-common (1:0.2.91.6) trusty-proposed; urgency=medium

  * UbuntuDrivers/detect.py, debian/tests/system, tests/ubuntu_drivers.py:
    - Do not autoinstall the broadcom driver. The open driver should be a
      better solution now (LP: #1306928), as the binary driver prevents
      a number of systems from using the wireless card.
    - Autoinstall linux-firmware-nonfree. This will help now that we no
      longer autoinstall Broadcom's binary driver.
    - Fix the relevant tests now that linux-firmware-nonfree has replaced
      bcmwl.
  * gpu-manager.c, tests/gpu-manager.py:
    - Ignore CRT displays when using PRIME. This works around systems whose
      BIOS provides a ghost output (LP: #1296020).
    - Check that we don't remove xorg.confs on 1st boot (as per the
      previous SRU).
    - Try harder when loading bbswitch (LP: #1310023). If loading bbswitch
      fails try with or without the "skip_optimus_dsm=1" option. Also, make
      sure that we trim dmi resources or matching will give us false
      positives.
    - Switch to intel/SNA for optimus systems (LP: #1326257).
    - Make sure to unload nvidia-uvm or nvidia won't be
      unloaded.
    - Make sure to walk properly the /dev/dri dir. This
      prevents the program from stopping when, for example
      /dev/dri/card1 is available while /dev/dri/card0 is
      not.
 -- Alberto Milone <email address hidden> Fri, 06 Jun 2014 11:20:28 +0200

Changed in ubuntu-drivers-common (Ubuntu Trusty):
status: Fix Committed → Fix Released
Revision history for this message
Scott Kitterman (kitterman) wrote : Update Released

The verification of the Stable Release Update for ubuntu-drivers-common has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Mathew Hodson (mhodson)
Changed in jockey (Ubuntu):
status: Fix Committed → Invalid
importance: Medium → Undecided
assignee: Alberto Milone (albertomilone) → nobody
Changed in jockey (Ubuntu Precise):
assignee: nobody → Alberto Milone (albertomilone)
Mathew Hodson (mhodson)
no longer affects: jockey (Ubuntu)
no longer affects: jockey (Ubuntu Trusty)
no longer affects: ubuntu-drivers-common (Ubuntu Precise)
Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

The fixed 𝐣𝐨𝐜𝐀𝐞𝐲 package is in Ubuntu 12.04LTS "Precise"'s 𝒑𝒓𝒐𝒑𝒐𝒔𝒆𝒅 repo for almost one and half years! See: https://launchpad.net/ubuntu/+source/jockey

I already tested 𝐣𝐨𝐜𝐀𝐞𝐲 from precise-proposed on linux-generic-lts-trusty on 3.13 kernel : https://bugs.launchpad.net/ubuntu/precise/+source/jockey/+bug/1306928/comments/13 . Additionally @fourdollars and me tested it on linux-generic-lts-saucy 3.11 kernel too: https://bugs.launchpad.net/ubuntu/precise/+source/jockey/+bug/1306928/comments/12 and https://bugs.launchpad.net/ubuntu/precise/+source/jockey/+bug/1306928/comments/6

So, I think all the necessary testing's been already done. Please consider releasing the new 𝐣𝐨𝐜𝐀𝐞𝐲 package to precise updates and close this bug.

Revision history for this message
Rohan "HEXcube" Villoth (hexcube) wrote :

According to https://launchpad.net/ubuntu/+source/jockey/+changelog and https://launchpad.net/ubuntu/+source/jockey/+publishinghistory , the fixed package was released to precise-updates on 2015-09-28. According to https://launchpad.net/ubuntu/+source/jockey , the package in precise updates - version 0.9.7-0ubuntu7.16 includes the fix. So, I'm marking this bug report as 'Fix Released' for Precise. Thanks @albertomilone for fixing this bug.

Changed in jockey (Ubuntu Precise):
status: Fix Committed → Fix Released
Revision history for this message
Iiro Laiho (iiro) wrote :

This bug seems to have resurfaced on xenial.

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.