0

I believe I've tried all proposed solutions for other questions involving the Broadcom BCM4352 wifi hardware, but on a fresh install of Ubuntu 16.10 on a Dell XPS 13 9343 (2015) I cannot get the system to recognise the device.

Output of sudo lshw -C network:

  *-network
       description: Network controller
       product: BCM4352 802.11ac Wireless Network Adapter
       vendor: Broadcom Limited
       physical id: 0
       bus info: pci@0000:02:00.0
       version: 03
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=bcma-pci-bridge latency=0
       resources: irq:19 memory:f7200000-f7207fff memory:f7000000-f71fffff

Output of rfkill list all (only bluetooth is recognised, not wifi):

2: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no

Output of lspci -knn | grep -A2 Net:

02:00.0 Network controller [0280]: Broadcom Limited BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03)
    Subsystem: Dell BCM4352 802.11ac Wireless Network Adapter [1028:0019]
    Kernel driver in use: bcma-pci-bridge
    Kernel modules: bcma, wl

Secure boot is disabled in the BIOS:

enter image description here

Wifi hardware is not shown in the Network Manager indicator:

enter image description here

I have selected bcmwl-kernel-source from the additional drivers application:

enter image description here

The wl module is loaded and and I have tried removing and reloading it.

I have also tried unloading wl, uninstalling and purging bcmwl-kernel-source and installing firmware-b43-installer and b43-fwcutter, but the problem remains the same.

The wireless hardware works in Windows 10 and older versions of Ubuntu up until 16.04 so there is no question of a hardware fault.

What else can I try to get the device working or debug the problem?

Ian Mackinnon
  • 1,274
  • 2
  • 21
  • 46
  • Please [edit] your question and add output of `lspci -knn | grep Net -A2; rfkill list` terminal command. – Pilot6 Oct 26 '16 at 11:21
  • I see that `wl` is installed, but not loaded. Please post the output of `sudo modprobe wl` command. – Pilot6 Oct 26 '16 at 11:28
  • @Pilot6, `wl` does appear to be loaded in `lsmod`. I've just tried removing and reloading it (neither generates output) but no effect. – Ian Mackinnon Oct 26 '16 at 11:31
  • Try `sudo modprobe -r bcma && sudo modprobe wl` – Pilot6 Oct 26 '16 at 11:39
  • I had to run `sudo modprobe -r bcma && sudo modprobe -r wl && sudo modprobe wl` but then it works! I tried blacklisting `bcma` in /etc/modprobe.d/blacklist.conf`, but `bcma` still loads and takes priority at startup. Any idea why that might be? By the way, your help is greatly appreciated. – Ian Mackinnon Oct 26 '16 at 11:52
  • How did you blacklist it? – Pilot6 Oct 26 '16 at 12:11
  • I added the line `blacklist bcma` to `/etc/modprobe.d/blacklist.conf`. Later I discovered the line was already present in `/etc/modprobe.d/blacklist-bcm43.conf` though neither seems to have any affect. bcma is still loaded. No other modules rely on it, and it's not in `/etc/modules` or `/etc/initramfs-tools/modules`. I can't tell what's loading it. – Ian Mackinnon Oct 26 '16 at 13:20

1 Answers1

1

We have found that, even though it is properly blacklisted, bcma loads anyway!! Let's correct it in rc.local.

Please do:

gksudo gedit /etc/systemd/system/rc-local.service

Put in the following:

[Unit]
 Description=/etc/rc.local Compatibility
 ConditionPathExists=/etc/rc.local

[Service]
 Type=forking
 ExecStart=/etc/rc.local start
 TimeoutSec=0
 StandardOutput=tty
 RemainAfterExit=yes
 SysVStartPriority=99

[Install]
 WantedBy=multi-user.target

Proofread carefully, save and close the text editor. Next:

gksudo gedit /etc/rc.local

Place the following:

#!/bin/sh -e

modprobe -r wl
modprobe -r bcma
modprobe wl

exit 0

Proofread carefully, save and close the text editor. Next:

sudo chmod +rx /etc/rc.local

sudo systemctl enable rc-local

sudo systemctl start rc-local.service
sudo systemctl status rc-local.service

If there are no errors, reboot and test.

chili555
  • 58,968
  • 8
  • 93
  • 129
  • Are there any items related to wl or bcma or b43 or ssb listed in `/etc/modprobe.d/blacklist.conf` or in `/etc/modules` ? – chili555 Oct 26 '16 at 13:29
  • `/etc/modules` is empty. `/etc/modprobe.d/blacklist.conf` contains the line `blacklist bcm43xx` but nothing else related to wireless as far as I can see. – Ian Mackinnon Oct 26 '16 at 13:31
  • Can you confirm that when you reboot, both bcma and wl load? `lsmod` What is your ethernet device? `lspci -nnk | grep 0200 -A2` – chili555 Oct 26 '16 at 13:33
  • Yes, both are loaded. `lspci` output is in the question. – Ian Mackinnon Oct 26 '16 at 13:38
  • I see the `lspci` for your wireless, but I asked for the ethernet. There is a conflict with some Broadcom ethernet drivers. – chili555 Oct 26 '16 at 13:39
  • Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/47463/discussion-between-chili555-and-ian-mackinnon). – chili555 Oct 26 '16 at 13:42