Starting with the Porteus-1.2 release we are going to provide 5 drivers which should cover all broadcom wifi cards.
There will be broadcom-sta driver placed in 000-kernel.xzm along with b43-legacy, b43, brcmsmac and brcmfmac drivers. The last three are blacklisted by default as are overlapping with broadcom-sta which supports the majority of wifi NIC's. Unfortunately some chipsets are not working properly with broadcom-sta so b43 and brcm* drivers comes to the rescue.
Here is an example of a wifi card that is not working with the broadcom-sta driver:
Code: Select all
lspci -knn
0c:00.0 Network controller [0280]: Broadcom Corporation BCM4311 802.11b/g WLAN [14e4:4311] (rev 01)
Subsystem: Dell Wireless 1390 WLAN Mini-Card [1028:0007]
Kernel modules: wl, ssb
Code: Select all
dmesg
[ 5.878844] wl: module license 'unspecified' taints kernel.
[ 5.878849] Disabling lock debugging due to kernel taint
[ 5.892862] wl 0000:0c:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 5.892872] wl 0000:0c:00.0: setting latency timer to 64
[ 5.895866] eth%d: 5.100.82.112 driver failed with code 21
Code: Select all
lspci -knn
0c: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]
Kernel driver in use: wl
Kernel modules: wl, ssb
Code: Select all
dmesg
[ 6.916353] wl: module license 'unspecified' taints kernel.
[ 6.916357] Disabling lock debugging due to kernel taint
[ 6.928402] wl 0000:0c:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 6.928416] wl 0000:0c:00.0: setting latency timer to 64
[ 6.990065] lib80211_crypt: registered algorithm 'TKIP'
[ 6.990369] eth1: Broadcom BCM4315 802.11 Hybrid Wireless Controller 5.100.82.112
What to do if your NIC is not working with the broadcom-sta driver?
The solution is quite simple as Porteus comes with other drivers which should do the job. The only thing which must be done is to blacklist 'wl' driver (our broadcom-sta) and unblacklist the rest.
Please create a file (plain text) at /mnt/sdXY/porteus/rootcopy/etc/modprobe.d/broadcom_blacklist.conf with following content:
Code: Select all
blacklist wl
By default Porteus ships only with open-source firmware for b43 driver which supports limited number of chipsets. You can still extract non-free firmware for b43 driver with the help of b43-fwcutter as described in this HOWTO:
link
here is sample dmesg output when broadcom chipset is served by the b43 driver:
Code: Select all
dmesg | grep b43
[ 8.070964] b43-pci-bridge 0000:0c:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 8.070975] b43-pci-bridge 0000:0c:00.0: setting latency timer to 64
[ 8.326540] b43-phy0: Broadcom 4311 WLAN found (core revision 10)
[ 8.444650] Registered led device: b43-phy0::tx
[ 8.444670] Registered led device: b43-phy0::rx
[ 8.444691] Registered led device: b43-phy0::radio
[ 11.554040] b43-phy0: Loading firmware version 666.2 (2011-02-23 01:15:07)
Hopefully all broadcom problems will finally be gone in Porteus-1.2 and up.