BCM4318 based network controller has multiple issues with sys-firmware/b43-firmware-220.127.116.11:
- Disconnects from AP every few minutes,
- Download speed is limited to about 1.2Kbps,
- Upload speed is limited to about 1Mbps.
Downgrading to sys-firmware/b43-firmware-5.100.138 fixes the problem.
Steps to Reproduce:
1. 'emerge =sys-firmware/b43-firmware-18.104.22.168'
2. Build kernel with CONFIG_B43=y, CONFIG_EXTRA_FIRMWARE="b43/ucode5.fw b43/b0g0initvals5.fw b43/b0g0bsinitvals5.fw b43/pcm5.fw"
3. Reboot to new kernel
4. Connect to AP
5. Test download/upload and monitor link status
'iwconfig' reports strong signal, connection gets dropped often, transfer rates are very low.
'iwconfig' reports strong signal, connection is stable, transfer rates are over 20Mbps.
AP and wireless card stand side by side (with 2m range).
Downgrading firmware to =sys-firmware/b43-firmware-5.100.138 fixes the problem.
Kernels checked: 3.17.8-gentoo-r1, 3.19.0-vanilla.
'lspci -vv' output:
03:05.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
Subsystem: ASUSTeK Computer Inc. WL-138G v2 / WL-138gE / WL-100gE
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-
Interrupt: pin A routed to IRQ 17
Region 0: Memory at dfefe000 (32-bit, non-prefetchable) [size=8K]
Kernel driver in use: b43-pci-bridge
'iwconfig wlan0' output:
wlan0 IEEE 802.11bg ESSID:"***"
Mode:Managed Frequency:2.417 GHz Access Point: ***
Bit Rate=36 Mb/s Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Link Quality=65/70 Signal level=-45 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:75 Invalid misc:215 Missed beacon:0
The b43 driver has similar issues when using b43-firmware-6.* with a BCM4311KFBG wireless card: very bad connectivity, drops frequently, very poor bandwidth -- basically it is unusable.
Additionally, broadcom-sta-6.* does not work with this card: loading the driver causes a Segmentation Fault (or, if the driver is built to use the wext API, it will fail with "code 21"). This is most likely not a hardware issue: I have tried two BCM4311KFBG cards, and I have issues with both.
Thus, the only solution I have right now for this card is b43 + b43-firmware-5.*.
I am also having this issue with a BCM4311 card and firmware version 22.214.171.124. Unusably slow speeds with frequent drops.The speeds and drops occur with wicd and networkmanager. It seemed like I was able to make the disconnects less frequent by using dhclient instead of dhcpcd, but I had to edit a line in wicd/misc.py to get dhclient to work and the speeds were slow either way. Works fine with a rollback to b43-firmware-5*
There is also a topic on the forum with a couple of others who are having this bug on both bcm4311 and bcm4318:
With sys-firmware/b43-firmware-126.96.36.199 driving Broadcom 4311 WLAN + G PHY
I cannot properly associate to an AP (it associates then immediately
With sys-firmware/b43-firmware-5.100.138 everything works fine.
Considering that b43 wiki page ( http://linuxwireless.org/en/users/Drivers/b43/#Other_distributions_not_mentioned_above ) explicitly tells to use firmware from Broadcom driver version 5.100.138
I think the sys-firmware/b43-firmware-188.8.131.52 package should be masked since
it seems not to be useful at all and certainly breaks things.
Created Github PR 3491 that resolves this issue.
This bug can be closed now since the problematic firmware version had been hard masked.
I can't do it on my own since I'm not the original reporter.
I'll mark it PMASKED but I'll leave the decision to Rick. After all, the bug is still there and I don't think we want to keep p.mask like this forever.
I am fine with it. I recently retired the computer with the BCM4311 card, so this issue no longer affects me. This will probably only ever be an issue for people with the BCM4311 card if a newer version of the firmware adds some essential new support. Otherwise, sys-firmware/b43-firmware-5.100.138 is sufficient.
Created attachment 482948 [details]
I have a BCM4322 chip and have not noticed this issue.
Attached: Relevant lspci -vvnn output.