|
Size: 13946
Comment: files in modprobe.d should be named *.conf in Lenny+
|
Size: 13924
Comment: Add unsupported chipsets for b43, link wl; fix links and anchors. Reduce device identification.
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 9: | Line 9: |
| == Device Identification == === PCI (includes PCIe, Mini PCI, Cardbus) === The page [[HowToIdentifyADevice/PCI]] explains how to identify a PCI device. For example: {{{ update-pciids lspci -nn }}} Your Broadcom PCI wireless device should be listed: {{{ 0c:00.0 Network controller: Broadcom Corporation BCM4311 802.11b/g WLAN [14E4:4311] (rev 01) }}} Note that controllers with pci-id 14e4:4315 are [[http://wireless.kernel.org/en/users/Drivers/b43#Supportedchiptypes | not supported]] even if are chipset 4312. Install proprietary drivers by downloading at this [[http://www.broadcom.com/support/802.11/linux_sta.php|page]] and following instruction in file README.txt . You need to have installed gcc binutils make and also your kernel headers ( apt-cache search headers | grep $(uname -r) and install found package ) <!> '''The [[HowToIdentifyADevice/PCI#pci-id|PCI-Id]] isn't sufficient to determine the Broadcom chipset within.''' The relevant driver has built-in logic to probe the actual chipset. === USB === The page [[HowToIdentifyADevice/USB]] explains how to identify a USB device. For example: {{{ update-usbids lsusb }}} Your Broadcom USB wireless device should be listed: {{{ Bus 003 Device 006: ID 050d:7051 Belkin Components F5D7051 54g USB Network Adapter }}} |
== Identification == <!> '''The [[HowToIdentifyADevice/PCI#pci-id|PCI-Id]] isn't sufficient to determine the Broadcom chipset within.''' The relevant driver has built-in logic to probe the actual chipset, for example: . {{{ b43-phy0: Broadcom 4306 WLAN found }}} Refer to http://www.linuxwireless.org/en/users/Drivers/b43#Known_PCI_devices for more information. |
| Line 39: | Line 24: |
| * [[#b43|b43]] ([[#supported-b43|supported devices]]) | * [[#b43-b43legacy|b43]] ([[#supported-b43|supported devices]], [[#unsupported-b43|unsupported devices]]) |
| Line 42: | Line 27: |
| * [[#b43|b43legacy]] ([[#supported-b43legacy|supported devices]]) | * [[#b43-b43legacy|b43legacy]] ([[#supported-b43legacy|supported devices]]) |
| Line 48: | Line 33: |
| * [[#bcm43xx|bcm43xx]] ([[#supported-bcm43xx|supported devices]]) | * [[wl]] ([[wl#supported|supported devices]]) * Non-free vendor driver, not in mainline kernels. * Supports the BCM4312 low-power chipset, BCM4321 and BCM4322 (draft-n) chipsets. * [[#bcm43xx-etch|bcm43xx]] ([[#supported-bcm43xx|supported devices]]) |
| Line 53: | Line 41: |
| More information on b43/b43legacy can be found on the Linux Wireless [[http://wireless.kernel.org/en/users/Drivers/b43#b43andb43legacy|b43 driver page]]. bcm43xx is no longer developed. Note that bcm43xx, b43 and b43legacy '''do not''' support any USB devices based on Broadcom wireless chipsets. | More information on b43/b43legacy can be found on the Linux Wireless [[http://wireless.kernel.org/en/users/Drivers/b43#b43_and_b43legacy|b43 driver page]]. bcm43xx is no longer developed. Note that bcm43xx, b43, b43legacy and wl '''do not''' support any USB devices based on Broadcom wireless chipsets. |
| Line 59: | Line 47: |
| <<Anchor(b43)>> <<Anchor(b43legacy)>> |
<<Anchor(b43-b43legacy)>> |
| Line 70: | Line 57: |
| The b43 driver requires version 4 firmware, whereas the b43legacy driver requires version 3 firmware. All firmware must be downloaded separately, which can be performed by the DebPkg:b43-fwcutter package during installation. | The b43 driver requires version 4 firmware, whereas the b43legacy driver requires version 3 firmware. All firmware must be downloaded separately, which can be performed by the DebianPkg:b43-fwcutter package during installation. |
| Line 79: | Line 66: |
| 1. Update the list of available packages and install the DebPkg:b43-fwcutter and DebPkg:wireless-tools packages: {{{ | 1. Update the list of available packages and install the DebianPkg:b43-fwcutter and DebianPkg:wireless-tools packages: {{{ |
| Line 83: | Line 70: |
| If you have an Internet connection available, allow the DebPkg:b43-fwcutter package to fetch and extract firmware. | If you have an Internet connection available, allow the DebianPkg:b43-fwcutter package to fetch and extract firmware. |
| Line 99: | Line 86: |
| * Examine the kernel ring buffer (dmesg) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message. | * Examine the kernel ring buffer ([[DebianMan:1/dmesg|dmesg(1)]]) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message. |
| Line 101: | Line 88: |
| * If necessary, firmware can be manually acquired and extracted using the b43-fwcutter utility, see http://wireless.kernel.org/en/users/Drivers/b43#firmwareinstallation | * If necessary, firmware can be manually acquired and extracted using the b43-fwcutter utility, see http://wireless.kernel.org/en/users/Drivers/b43#firmware_installation |
| Line 115: | Line 102: |
| 1. Install the DebPkg:wireless-tools package: {{{ | 1. Install the DebianPkg:wireless-tools package: {{{ |
| Line 135: | Line 122: |
| * [[http://wireless.kernel.org/en/users/Drivers/rndis_wlan#knownproblems|Known problems]] with this driver are documented on its homepage. <<Anchor(bcm43xx)>> |
* [[http://wireless.kernel.org/en/users/Drivers/rndis_wlan#known_problems|Known problems]] with this driver are documented on its homepage. <<Anchor(bcm43xx-etch)>> |
| Line 141: | Line 128: |
| The bcm43xx driver requires firmware which must be downloaded separately (can be performed by the DebPkg:etch-volatile/bcm43xx-fwcutter package during installation). . <!> You are required to install the DebPkg:etch-volatile/bcm43xx-fwcutter package from the [[DebianVolatile|Debian Volatile]] repository due to bug Bug:437488. Installing the DebPkg:etch/bcm43xx-fwcutter package ''will fail'' to download firmware if requested. |
The bcm43xx driver requires firmware which must be downloaded separately (can be performed by the DebianPkg:etch-volatile/bcm43xx-fwcutter package during installation). . <!> You are required to install the DebianPkg:etch-volatile/bcm43xx-fwcutter package from the [[DebianVolatile|Debian Volatile]] repository due to bug DebianBug:437488. Installing the DebianPkg:etch/bcm43xx-fwcutter package ''will fail'' to download firmware if requested. |
| Line 149: | Line 136: |
| 1. Update the list of available packages and install the DebPkg:etch-volatile/bcm43xx-fwcutter and DebPkg:etch/wireless-tools packages: {{{ | 1. Update the list of available packages and install the DebianPkg:etch-volatile/bcm43xx-fwcutter and DebianPkg:etch/wireless-tools packages: {{{ |
| Line 153: | Line 140: |
| If you have an Internet connection available, allow the DebPkg:etch-volatile/bcm43xx-fwcutter package to fetch and extract firmware. | If you have an Internet connection available, allow the DebianPkg:etch-volatile/bcm43xx-fwcutter package to fetch and extract firmware. |
| Line 167: | Line 154: |
| * Examine the kernel ring buffer (dmesg) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message. * Ensure that you have installed the DebPkg:etch-volatile/bcm43xx-fwcutter package from [[DebianVolatile|Debian Volatile]]. |
* Examine the kernel ring buffer ([[DebianMan:1/dmesg|dmesg(1)]]) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message. * Ensure that you have installed the DebianPkg:etch-volatile/bcm43xx-fwcutter package from [[DebianVolatile|Debian Volatile]]. |
| Line 170: | Line 157: |
| * Your device may be detected (or better supported) with the [[#b43|b43 or b43legacy driver]]. | * Your device may be detected (or better supported) with the [[#b43-b43legacy|b43 or b43legacy driver]]. |
| Line 174: | Line 161: |
| * This should only be used as a last resort, if the device is not supported by the native drivers (eg. Broadcom USB devices, other than the BCM4320 USB). * Etch users: Before resorting to NDISwrapper, try using the [[#b43|b43/b43legacy drivers]]. |
* This should only be used as a last resort, if the device is not supported by the native drivers (e.g. Broadcom USB devices, other than the BCM4320 USB). * Etch users: Before resorting to NDISwrapper, try using the [[#b43-b43legacy|b43/b43legacy drivers]]. |
| Line 202: | Line 189: |
| http://wireless.kernel.org/en/users/Drivers/b43#Supportedchiptypes - supported devices | http://wireless.kernel.org/en/users/Drivers/b43#Supported_chip_types - supported chipsets <<Anchor(unsupported-b43)>> ==== Unsupported ==== * BCM4312 low-power variant (PCI-ID: '''14E4:4315''') * BCM4321 (PCI-IDs: 14E4:4328, 14E4:4329) * BCM4322 (PCI-ID: 14E4:432B) Support for the above chipsets is available via the non-free vendor driver, see [[wl]]. http://www.linuxwireless.org/en/users/Drivers/b43#unsupported_chips - unsupported chipsets |
| Line 208: | Line 206: |
| http://wireless.kernel.org/en/users/Drivers/b43#Supportedchiptypes - supported devices | http://wireless.kernel.org/en/users/Drivers/b43#Supported_chip_types - supported chipsets |
| Line 214: | Line 212: |
| The following list is based on the ''alias'' fields of {{{ modinfo rndis_wlan}}} on Lenny. | The following list is based on the ''alias'' fields of {{{modinfo rndis_wlan}}} on Lenny. |
| Line 231: | Line 229: |
| http://wireless.kernel.org/en/users/Drivers/rndis_wlan#supportedchips - supported devices | http://wireless.kernel.org/en/users/Drivers/rndis_wlan#supported_chips - supported chipsets |
| Line 235: | Line 233: |
| The following list is based on the ''alias'' fields of {{{ modinfo bcm43xx}}} on Etch. | The page [[HowToIdentifyADevice/PCI]] explains how to identify a PCI device. The following list is based on the ''alias'' fields of {{{modinfo bcm43xx}}} on Etch. |
| Line 247: | Line 247: |
| {i} Although listed above, the BCM4311 is only supported by this driver from kernel 2.6.20.6. Use of the [[#b43|b43 driver]] is recommended. | {i} Although listed above, the BCM4311 is only supported by this driver from kernel 2.6.20.6. Use of the [[#b43-b43legacy|b43 driver]] is recommended. |
| Line 254: | Line 254: |
| * [[wl]] (vendor driver) - Broadcom 4311, 4312, 4321, 4322 devices |
Broadcom 43xx wireless devices
This page describes how to enable support for WiFi devices based on Broadcom 4303, 4306, 4309, 4311, 4312, 4318 and 4320 chipsets on Debian systems.
Contents
Identification
The PCI-Id isn't sufficient to determine the Broadcom chipset within.
The relevant driver has built-in logic to probe the actual chipset, for example:
b43-phy0: Broadcom 4306 WLAN found
Refer to http://www.linuxwireless.org/en/users/Drivers/b43#Known_PCI_devices for more information.
Drivers
There are multiple drivers supporting Broadcom wireless LAN chipsets.
Linux native drivers:
b43 (supported devices, unsupported devices)
- The new driver for modern 802.11g and 802.11a chipsets.
- Introduced in kernel 2.6.24.
- For legacy 802.11b-only devices and the BCM4306 revision 2 chipset.
- Introduced in kernel 2.6.24.
rndis_wlan (supported devices)
For devices with the BCM4320 USB chipset only.
- Introduced in kernel 2.6.25.
- Non-free vendor driver, not in mainline kernels.
- Supports the BCM4312 low-power chipset, BCM4321 and BCM4322 (draft-n) chipsets.
- Included in mainline kernels from 2.6.17-rc2.
- Disabled in Debian 2.6.24 and later kernels.
- Removed from the mainline kernel in 2.6.26.
More information on b43/b43legacy can be found on the Linux Wireless b43 driver page. bcm43xx is no longer developed. Note that bcm43xx, b43, b43legacy and wl do not support any USB devices based on Broadcom wireless chipsets.
Using Windows' binary drivers:
NDISwrapper plus the relevant Windows NDIS driver. This is a workaround for devices not supported natively by Linux, such as USB devices based on Broadcom wireless chipsets (other than the BCM4320 USB).
b43 and b43legacy
For 2.6.24 and later kernels. Both drivers are included as modules in Debian kernel images.
Etch users: These drivers are not present in the stock 2.6.18 kernel. Install an EtchAndAHalf kernel: apt-cache search linux-image-2.6- | grep etchnhalf and install a package appropriate for your system.
- Restart your system with this kernel before continuing.
The b43 driver supports modern Broadcom 802.11g wireless chipsets. The b43legacy driver supports Broadcom 802.11b-only devices and BCM4306 revision 2 chipsets.
The b43 driver requires version 4 firmware, whereas the b43legacy driver requires version 3 firmware. All firmware must be downloaded separately, which can be performed by the b43-fwcutter package during installation.
Add a "contrib" component to /etc/apt/sources.list for your Debian version, for example:
# Debian Lenny/5.0 deb http://ftp.us.debian.org/debian lenny main contrib non-free
or
# Debian Etch/4.0 deb http://ftp.us.debian.org/debian etch main contrib non-free
Update the list of available packages and install the b43-fwcutter and wireless-tools packages:
aptitude update aptitude install b43-fwcutter wireless-tools
If you have an Internet connection available, allow the b43-fwcutter package to fetch and extract firmware.
The necessary kernel module should be automatically loaded. If necessary, it can be manually loaded via either:
modprobe b43
or
modprobe b43legacy
Verify your device has an available interface:
iwconfig
Raise the interface to activate the radio, for example:
ifconfig wlan0 up
Configure your wireless interface as appropriate.
Troubleshooting
Examine the kernel ring buffer (dmesg(1)) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message.
Run dpkg-reconfigure -plow b43-fwcutter to fetch and extract firmware again. Firmware will only be fetched if not already present in the /lib/firmware/[b43|b43legacy] directories on your system.
If necessary, firmware can be manually acquired and extracted using the b43-fwcutter utility, see http://wireless.kernel.org/en/users/Drivers/b43#firmware_installation
rndis_wlan
For 2.6.25 and later kernels. This is included as a module in Debian kernel images.
Etch users: This driver is not present in the stock 2.6.18 kernel. Install a 2.6.26 kernel from Debian Backports. Once your sources are configured: apt-cache search linux-image-2.6.26 and install a package appropriate for your system.
- Restart your system with this kernel before continuing.
The rndis_wlan driver supports wireless RNDIS1 chipsets, of which the Broadcom 4320 USB chipset is the only one known at this time. This driver does not require firmware to be installed.
Belkin F5D7051 users: Due to the inclusion of its vendor and device IDs, an Ralink RT2500USB driver will be incorrectly loaded for this device. Please blacklist the rt2500usb module before continuing, see KernelModuleBlacklisting.
Install the wireless-tools package:
aptitude update aptitude install wireless-tools
- Physically connect the device to your system.
The necessary kernel module should be automatically loaded. If necessary, it can be manually loaded via:
modprobe rndis_wlan
Verify your device has an available interface:
iwconfig
Raise the interface to activate the radio, for example:
ifconfig wlan0 up
Configure your wireless interface as appropriate.
Troubleshooting
This driver does not support connections to hidden WPA networks at this time.
If you are attempting to use a Belkin F5D7051 device, blacklist the rt2500usb module as advised earlier and execute modprobe -r rt2500usb to unload it.
Known problems with this driver are documented on its homepage.
bcm43xx (Etch with 2.6.18 kernel only)
For kernels earlier than 2.6.24. This is included as a module in Debian kernel images.
The bcm43xx driver requires firmware which must be downloaded separately (can be performed by the etch-volatile/bcm43xx-fwcutter package during installation).
You are required to install the etch-volatile/bcm43xx-fwcutter package from the Debian Volatile repository due to bug 437488. Installing the etch/bcm43xx-fwcutter package will fail to download firmware if requested.
Add the Debian Volatile repository (including the "contrib" component) to your /etc/apt/sources.list file, for example:
# Debian Volatile (Etch/4.0) deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free
Update the list of available packages and install the etch-volatile/bcm43xx-fwcutter and etch/wireless-tools packages:
aptitude update aptitude install bcm43xx-fwcutter wireless-tools
If you have an Internet connection available, allow the etch-volatile/bcm43xx-fwcutter package to fetch and extract firmware.
The necessary kernel module should be automatically loaded. If necessary, it can be manually loaded via:
modprobe bcm43xx
Verify your device has an available interface:
iwconfig
Raise the interface to activate the radio, for example:
ifconfig eth1 up
Configure your wireless interface as appropriate.
Troubleshooting
Examine the kernel ring buffer (dmesg(1)) to verify the required firmware files are being loaded by the driver. Lack of firmware is the usual reason for the "SIOCSIFFLAGS: No such file or directory" error message.
Ensure that you have installed the etch-volatile/bcm43xx-fwcutter package from Debian Volatile.
Run dpkg-reconfigure -plow bcm43xx-fwcutter to fetch and extract firmware again. Firmware will only be fetched if not already present in the /lib/firmware directory on your system.
Your device may be detected (or better supported) with the b43 or b43legacy driver.
NDISwrapper
- This should only be used as a last resort, if the device is not supported by the native drivers (e.g. Broadcom USB devices, other than the BCM4320 USB).
Etch users: Before resorting to NDISwrapper, try using the b43/b43legacy drivers.
Blacklist native drivers
If loaded, the bcm43xx and b43/b43legacy drivers will conflict with NDISwrapper. To unload and disable:
Lenny, Etch with 2.6.24 kernel
modprobe -r b43 modprobe -r b43legacy echo -e blacklist b43\\nblacklist b43legacy >> /etc/modprobe.d/local.conf
Etch with 2.6.18 kernel
modprobe -r bcm43xx echo blacklist bcm43xx >> /etc/modprobe.d/local.conf
Installation
Kernel module and NDIS driver installation is described on the NDISwrapper page.
Supported Devices
b43
The page HowToIdentifyADevice/PCI explains how to identify a PCI device.
http://wireless.kernel.org/en/users/Drivers/b43#Supported_chip_types - supported chipsets
Unsupported
BCM4312 low-power variant (PCI-ID: 14E4:4315)
- BCM4321 (PCI-IDs: 14E4:4328, 14E4:4329)
- BCM4322 (PCI-ID: 14E4:432B)
Support for the above chipsets is available via the non-free vendor driver, see wl.
http://www.linuxwireless.org/en/users/Drivers/b43#unsupported_chips - unsupported chipsets
b43legacy
The page HowToIdentifyADevice/PCI explains how to identify a PCI device.
http://wireless.kernel.org/en/users/Drivers/b43#Supported_chip_types - supported chipsets
rndis_wlan
The page HowToIdentifyADevice/USB explains how to identify a USB device.
The following list is based on the alias fields of modinfo rndis_wlan on Lenny.
USB: 0411:004B MelCo., Inc. (Device name unknown) USB: 0411:00BC MelCo., Inc. (Device name unknown) USB: 050D:011B Belkin Components (Device name unknown) USB: 0A5C:D11B Broadcom Corp. (Device name unknown) USB: 0B05:1717 ASUSTek Computer, Inc. (Device name unknown) USB: 0BAF:0111 U.S. Robotics (Device name unknown) USB: 0BAF:011B U.S. Robotics Wireless MAXg Adapter USB: 13B1:000E Linksys (Device name unknown) USB: 13B1:0014 Linksys (Device name unknown) USB: 13B1:0026 Linksys (Device name unknown) USB: 1690:0715 Askey Computer Corp. [hex] Voyager 1055 Laptop Adapter USB: 1799:011B (Vendor name unknown) (Device name unknown)
http://wireless.kernel.org/en/users/Drivers/rndis_wlan#supported_chips - supported chipsets
bcm43xx
The page HowToIdentifyADevice/PCI explains how to identify a PCI device.
The following list is based on the alias fields of modinfo bcm43xx on Etch.
PCI: 14E4:4301 Broadcom Corporation BCM4303 802.11b Wireless LAN Controller PCI: 14E4:4307 Broadcom Corporation BCM4307 802.11b Wireless LAN Controller PCI: 14E4:4318 Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller PCI: 14E4:4319 Broadcom Corporation BCM4311 [AirForce 54g] 802.11a/b/g PCI Express Transceiver PCI: 14E4:4320 Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller PCI: 14E4:4324 Broadcom Corporation BCM4309 802.11a/b/g PCI: 14E4:4325 Broadcom Corporation BCM43xG 802.11b/g
Although listed above, the BCM4311 is only supported by this driver from kernel 2.6.20.6. Use of the b43 driver is recommended.
http://bcm43xx.berlios.de/?go=devices - supported devices
See Also
wl (vendor driver) - Broadcom 4311, 4312, 4321, 4322 devices
External Links
http://www.linuxwireless.org/en/users/Drivers/b43 - b43, b43legacy homepage;
b43 and b43legacy - device firmware
irc://irc.freenode.net/bcm-users - driver IRC channel
http://www.linuxwireless.org/en/users/Drivers/rndis_wlan - rndis_wlan homepage
http://bcm43xx.berlios.de/ - bcm43xx homepage
CategoryHardware | CategoryWireless
Microsoft's unofficial CDC ACM variant, see USB CDC on Wikipedia. (1)
