最近接触了一下Gentoo,在无线网卡方面遇到了问题,于是便广泛的查找资料,虽然到最后还是没有搞定,但是把过程中积累下来的东西和大家分享分享,有什么错误的地方,欢迎大家回帖指正
如果明白以下背景知识的,请直接移步
Gentoo安装b43无线驱动指南:
Gentoo无线网卡安装之b43无线驱动篇(二)
Gentoo安装broadcom-sta(wl)无线驱动指南:
Gentoo无线网卡安装之broadcom-sta(wl)篇(三)
首先介绍一点背景知识:
1.broadcom(博通)无线网卡,总有三种类型的驱动
驱动类型 |
描述 |
brcmsmac/brcmfmac |
内核自带,源自broadcom的开源驱动 |
b43 |
内核自带,源自 broadcom linux 驱动的逆向工程 |
Broadcom-wl |
broadcom发布的专用驱动 |
2.关于三种驱动相关信息的对比
Basic info |
b43 |
STA (wl) |
brcmsmac |
Open source |
yes |
no |
yes |
In kernel |
yes |
no |
yes |
Supported buses |
b43 |
wl |
brcmsmac |
ssb |
yes |
yes |
no |
bcma |
yes |
yes |
yes |
usb |
no |
no |
no |
Supported PHYs |
b43 |
wl |
brcmsmac |
G |
yes |
yes |
no |
N |
yes |
yes |
yes |
LP |
yes |
yes |
no |
HT |
yes |
no |
no |
LCN |
no |
yes |
yes |
Supported modes |
b43 |
wl |
brcmsmac |
Managed |
yes |
yes |
yes |
Ad-Hoc |
yes |
yes |
unknown |
Monitor |
yes |
yes |
no |
AP |
yes |
no |
no |
3.博通无线网卡对应的型号支持,alternative指除b43之外
PCI-ID |
Supported? |
Chip ID |
Modes |
PHY version |
Alternative |
14e4:0576 |
not tested |
BCM43224 |
? |
? |
wl/brcm80211 |
14e4:4301 |
yes (b43legacy) |
BCM4301 |
b |
B |
|
14e4:4306 |
yes (b43legacy) |
BCM4306/2 |
b/g |
G |
|
14e4:4307 |
yes |
BCM4306/3 |
b/g |
G |
|
14e4:4311 |
yes |
BCM4311 |
b/g |
G |
wl |
14e4:4312 |
yes |
BCM4311 |
a/b/g |
G (r8) |
wl |
14e4:4313 |
not tested |
BCM4311 |
a |
? |
wl |
no (WIP) |
BCM4313 |
b/g/n |
LCN (r1) |
wl/brcm80211 |
|
14e4:4315 |
yes (2.6.33+) |
BCM4312 |
b/g |
LP (r1) |
wl |
14e4:4318 |
yes |
BCM4318 |
b/g |
G (r7) |
|
14e4:4319 |
yes |
BCM4318 |
a/b/g |
G |
|
14e4:4320 |
yes (b43legacy) |
BCM4306/2 |
b/g |
G (r1) |
|
yes |
BCM4306/3 |
? |
G (r2) |
||
14e4:4320 (USB) |
no (USB device) |
BCM4320 |
a/g |
? |
rndis_wlan |
14e4:4321 |
partially in 2.6.39+ |
BCM4321 |
? |
N (r2) |
|
14e4:4322 |
no |
BCM4322 |
b/g/n |
N (r4) |
|
14e4:4323 (USB) |
no (USB device) |
BCM4323 |
a/b/g/n |
? |
ndiswrapper |
14e4:4324 |
yes (b43legacy) |
BCM4309 |
a/b/g |
G (r1) |
|
yes |
BCM4309 |
a/b/g |
G (r5) |
||
14e4:4325 |
yes (b43legacy) |
BCM4306/2 |
b/g |
G (r1) |
|
14e4:4328 |
partially in 2.6.39+ |
BCM4321 |
b/g/n |
N (r2) |
wl |
14e4:4329 |
partially in 2.6.39+ |
BCM4321 |
b/g/n |
N (r1) |
wl |
14e4:432a |
not tested |
BCM4321 |
a/n |
N |
wl |
14e4:432b |
partially in 2.6.39+ |
BCM4322 |
a/b/g/n |
N (r4) |
wl |
14e4:432c |
yes |
BCM4322 |
b/g/n |
N |
wl |
14e4:432d |
not tested |
BCM4322 |
a/n |
N |
wl |
14e4:4331 |
yes (3.2-rc3+) |
BCM4331 |
b/g |
HT (r1) |
wl |
14e4:4350 |
yes |
BCM43222 |
? |
N (r6) |
|
14e4:4353 |
yes (3.1+) |
BCM43224 |
a/b/g/n |
N (r6) |
wl/brcm80211 |
14e4:4357 |
yes (3.1+) |
BCM43225 |
b/g/n |
N (r6) |
wl/brcm80211 |
14e4:4358 |
no (WIP) |
BCM43227 |
b/g/n |
LCNXN (r0) |
wl |
14e4:4359 |
no |
BCM43228 |
a/b/g/n |
LCNXN (r0) |
wl |
14e4:435a |
no |
BCM43228 |
? |
? |
wl |
14e4:4360 |
no |
BCM4360 |
? |
AC? |
|
14e4:4365 |
no |
BCM43142 |
? |
LCN40 (r3) |
wl |
14e4:43a0 |
no |
BCM4360 |
? |
AC? |
|
14e4:43a2 |
no |
BCM4360 |
? |
AC (r0) |
|
14e4:43b1 |
no |
BCM4352 |
? |
AC? |
|
14e4:4727 |
no (WIP) |
BCM4313 |
b/g/n |
LCN (r1) |
wl/brcm80211 |
14e4:a8d6 |
not tested |
BCM43222 |
? |
N (6) |
|
14e4:a8d8 |
yes (3.6+) |
BCM43224 |
a/b/g/n |
N (r6) |
brcm80211 |
yes (3.6+) |
BCM43225 |
? |
N (r6) |
brcm80211 |
|
14e4:a99d |
not tested |
BCM43421? |
? |
? |
wl |
以上信息来源:en:users:drivers:b43 [Linux Wireless]
4.查看自己的网卡型号:
lspci –vnn |grep 14e4
例如得到系统输出:
0e:00.0 Network controller [0280]: Broadcom Corporation BCM4312802.11b/g [14e4:4315] (rev 01)
由此可知,网卡为broadcom(博通),型号为BCM4312
5.判断无线网卡驱动是否运作正常
输入iwconfig
如果显示
lo no wireless extensions.
eth0 no wireless extensions.
sit0 no wireless extensions.
则表示无线网卡的驱动没有成功驱动
如果显示
lo nowireless extensions.
eth0 no wireless extensions.
wlan0 IEEE802.11 Nickname:""
Access Point:Not-Associated
LinkQuality:2 Signal level:183 Noise level:162
Rx invalidnwid:0 invalid crypt:0 invalid misc:0
则表示无线网卡的驱动正常工作
6.三种驱动的使用方式:
1.针对 b43 选择 Device Drivers --->Network device support ---> Wireless LAN ---> Broadcom 43xx wirelesssupport (mac80211 stack), 还需要安装sys-firmware/b43-firmware
2.针对 brcmsmac 选择 Device Drivers --->Network device support ---> Wireless LAN ---> Broadcom IEEE802.11n PCIeSoftMAC WLAN driver,还需要安装sys-kernel/linux-firmware。
3.对于 wl,需要安装 net-wireless/broadcom-sta