1

Everything worked fine under Ubuntu 13.08 using the STA proprietary driver. Under insistence of Ubuntu warning messages, i decided to upgrade to Ubuntu 14.04 only to see that the wireless circuitry does not respond anymore. I have tried all 4 kernel modules deemed compatible with the BCM4312 chipset but none of them worked.

At last resort, I decided to download the latest source code provided by Broadcom (corresponding to the BCM 4312 chipset) for 64bit architecture. I had to change some details in the file system to get the compilation to work. The compilation didn't show any serious warning but when trying to insert the resulting compiled driver into the kernel with the command "insmod", a fatal error appeared because of a "format" error. I tried to use "modprobe", no error messages were issued but it apparently failed because the network function is still unavailable and the ouput of lscpi command showed no kernel driver attached to the Broadcom wireless network controller.

LSCPI command ouput (irrelevant text truncated):

... 06:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g LP-PHY [14e4:4315] (rev 01) Subsystem: Dell Wireless 1395 WLAN Mini-Card [1028:000b] Flags: bus master, fast devsel, latency 0, IRQ 11 Memory at f4000000 (64-bit, non-prefetchable) [size=16K] Capabilities: [40] Power Management version 3 Capabilities: [58] Vendor Specific Information: Len=78 Capabilities: [e8] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [d0] Express Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting Capabilities: [13c] Virtual Channel Capabilities: [160] Device Serial Number 1b-bf-44-ff-ff-db-00-16 Capabilities: [16c] Power Budgeting

07:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 02) Subsystem: Dell Device [1028:0273] Flags: bus master, fast devsel, latency 0, IRQ 44 I/O ports at 5000 [size=256] Memory at f8610000 (64-bit, prefetchable) [size=4K] Memory at f8600000 (64-bit, prefetchable) [size=64K] [virtual] Expansion ROM at f8620000 [disabled] [size=64K] Capabilities: [40] Power Management version 3 Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+ Capabilities: [70] Express Endpoint, MSI 01 Capabilities: [b0] MSI-X: Enable- Count=2 Masked- Capabilities: [d0] Vital Product Data Capabilities: [100] Advanced Error Reporting Capabilities: [140] Virtual Channel Capabilities: [160] Device Serial Number 00-00-00-00-00-00-00-00 Kernel driver in use: r8169 .... "

The actual error message i got with the command "insmod wl.ko" is "invalid module format"

wl.ko being the file obtained from the compilation of the driver source code supplied by Broadcom.


I uninstalled the kernel driver ( even if I doubt it has been installed / used by the system) using the command

 apt-get purge bcmwl-kernel-source

(the terminal then displayed messages saying that the firmware-bc43-installer was recovered or downloaded to be installed)

I then installed the STA driver by entering the command

apt-get install linux-firmware-nonfree

I checked the /etc/modprobe.d/blacklist.conf file and uncommented the line blacklist bcm43xx, the only related to the wireless device/driver.

Then rebooted.

Now I still have no improvement:

# lspci -v |grep -13 Network

    I/O ports at 18e0 [size=32]
    Memory at f8500000 (32-bit, non-prefetchable) [size=2K]
    Capabilities: [80] MSI: Enable+ Count=1/4 Maskable- 64bit-
    Capabilities: [70] Power Management version 3
    Capabilities: [a8] SATA HBA v1.0
    Kernel driver in use: ahci

00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
    Subsystem: Dell Device 0273
    Flags: medium devsel, IRQ 10
    Memory at c0500000 (32-bit, non-prefetchable) [size=256]
    I/O ports at 1c20 [size=32]

06:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)
    Subsystem: Dell Wireless 1395 WLAN Mini-Card
    Flags: bus master, fast devsel, latency 0, IRQ 11
    Memory at f4000000 (64-bit, non-prefetchable) [size=16K]
    Capabilities: [40] Power Management version 3
    Capabilities: [58] Vendor Specific Information: Len=78 <?>
    Capabilities: [e8] MSI: Enable- Count=1/1 Maskable- 64bit+
    Capabilities: [d0] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [13c] Virtual Channel
    Capabilities: [160] Device Serial Number 1b-bf-44-ff-ff-db-00-16
    Capabilities: [16c] Power Budgeting <?>

07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 02)

#lshw 

...
*-pci:2
             description: PCI bridge
             product: 82801H (ICH8 Family) PCI Express Port 4
             vendor: Intel Corporation
             physical id: 1c.3
             bus info: pci@0000:00:1c.3
             version: 03
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:42 ioport:4000(size=4096) memory:f4000000-f7ffffff ioport:fc000000(size=33554432)
           *-network UNCLAIMED
                description: Network controller
                product: BCM4312 802.11b/g LP-PHY
                vendor: Broadcom Corporation
                physical id: 0
                bus info: pci@0000:06:00.0
                version: 01
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list
                configuration: latency=0
                resources: memory:f4000000-f4003fff
...


# lsmod

Module                  Size  Used by
zram                   18439  2 
dm_crypt               22924  1 
coretemp               13355  0 
dell_wmi               12681  0 
sparse_keymap          13890  1 dell_wmi
dell_laptop            17369  0 
dcdbas                 14397  1 dell_laptop
uvcvideo               80847  0 
videobuf2_vmalloc      13056  1 uvcvideo
videobuf2_memops       13202  1 videobuf2_vmalloc
videobuf2_core         40542  1 uvcvideo
videodev              129379  2 uvcvideo,videobuf2_core
microcode              22939  0 
joydev                 17377  0 
serio_raw              13215  0 
lpc_ich                17061  0 
parport_pc             28152  0 
ppdev                  17073  0 
lp                     17759  0 
parport                46345  3 lp,ppdev,parport_pc
mac_hid                13205  0 
psmouse                95934  0 
ahci                   25731  2 
libahci                31394  1 ahci
sdhci_pci              18619  0 
firewire_ohci          40315  0 
sdhci                  32686  1 sdhci_pci
r8169                  67706  0 
firewire_core          64566  1 firewire_ohci
i915                  605700  3 
crc_itu_t              12707  1 firewire_core
i2c_algo_bit           13413  1 i915
drm_kms_helper         49394  1 i915
drm                   286260  4 i915,drm_kms_helper
wmi                    19070  1 dell_wmi
video                  19390  1 i915

1 Answers1

0

Your 4312 Broadcom [4315] can use either the b43 driver or the proprietary STA (wl) driver according to b43-Linux Wireless. The b43 driver is present by default, but needs you to install the proprietary firmware, which you can do by installing package linux-firmware-nonfree. If for some reason that firmware doesn't work with the [4315], you can run the b43 cutter and installer packages you mentioned. The end result should be a set of firmware files in directory /lib/firmware/b43 Wireless should pick up the driver on the next boot, provided you are not suppressing the b43 driver with a "blacklist b43" line in any file in /etc/modprobe.d. Check for any such lines and comment them out. They should be removed if you purge the STA package files, but check yourself just to be sure.

I have no recent experience with the STA driver, but just using the Additional DRivers Dash selection should add it (when you are on a wired connection obviously). In that case, there is no need for any firmware files since they are included in the STA driver itself (that's where the b43 cutter gets them from).

ubfan1
  • 17,838
  • Here's a quick way to quickly find /etc/modprobe.d files that reference "b43": find /etc/modprobe.d/* -exec grep -q "b43" '{}' \; -print – Enterprise Nov 15 '14 at 04:16
  • Finally, using the "Additional driver" selection worked it out, it needed to download 60Mbytes to resolve the problem. But when click on the icon in the rightlower corner of the screen, My wifi network is listed, and When i select the network, I am prompted to enter the password but nothing works. The command line # ifconfig gives : wlan0[lf]Link encap:Ethernet HWaddr 00:16:44:db:1b:bf [lf]inet6 addr: fe80::216:44ff:fedb:1bbf/64 Scope:Link[lf] UP BROADCAST MULTICAST MTU:1500 Metric:1[lf]... Why an IPv6 address ? Where and how to specify the config of the wireless network ? – Paintre artis Nov 16 '14 at 15:48