Traducciones: English - Español - Français - 简体中文
Dispositivos Broadcom BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227, BCM43228 (wl)
Esta página describe como habilitar el soporte para los dispositivos WiFi basados en los chipsets Broadcom 4311/4312/4313/4321/4322 - usando el driver híbrido Broadcom - en sistemas Debian.
Contents
Algunos dispositivos inalámbricos Broadcom no son soportados por el driver de ingeniería reversa b43 por el momento, entre ellos:
- BCM4313 (PCI-ID: 14E4:4727)
- BCM4321 (PCI-IDs: 14E4:4328, 14E4:4329)
- BCM4322 (PCI-ID: 14E4:432B)
El soporte para estos chipsets es posible usando el driver (wl) hecho por el fabricante, éstos incluyen componentes binarios únicamente para las arquitecturas x86 ó x86-64. Los dispositivos soportados son listados más bajo en este página.
Un método alternativo de soporte para su dispositivo puede ser utilizando NDISwrapper.
El driver del fabricante depende de la arquitectura x86 o x86-64 (los ports Debian i386 y AMD64 respectivamente) a este momento.
Los chipsets BCM4313, BCM43224 y BCM43225 son alternativamente soportados por el driver brcmsmac.
Desde Debian 7.0 "Wheezy", los chipsets BCM4321 et BCM4322 son alternativamente soportados por el driver b43.
Instalación
Debian 7.0 "Wheezy"
1. Agregue el componente "non-free" a /etc/apt/sources.list, por ejemplo:
# Debian 7.0 "Wheezy" deb http://http.debian.net/debian/ wheezy main contrib non-free
Actualize la lista de paquetes disponibles. Instale los paquetes linux-headers y broadcom-sta-dkms:
# apt-get update # apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
Esto instale tambien el paquete recommandado wireless-tools. DKMS compilará el módulo wl adecuado a su sistema.
Baje los módulos conflictivos:
# modprobe -r b44 b43 b43legacy ssb brcmsmac
Cargue el módulo wl:
# modprobe wl
Configure su interfaz inalámbrica de manera apropiada. Ver errores conocidos.
Debian 6.0 "Squeeze"
Agregue el componente "non-free" a /etc/apt/sources.list, por ejemplo:
# Debian 6.0 "Squeeze" deb http://http.debian.net/debian/ squeeze main contrib non-free
Actualize la lista de paquetes disponibles. Instale los paquetes module-assistant y wireless-tools:
# apt-get update # apt-get install module-assistant wireless-tools
Compile e instale el paquete broadcom-sta-modules-* para su sistema, usando Module-Assistant:
# m-a a-i broadcom-sta
Reconstruya su initial ramdisk, para mover los módulos a la blacklist definidos en el archivo /etc/modprobe.d/broadcom-sta-common.conf con initramfs:
# update-initramfs -u -k $(uname -r)
Baje los módulos conflictivos:
# modprobe -r b44 b43 b43legacy ssb brcm80211
Cargue el módulo wl:
# modprobe wl
Configure su interfaz inalámbrica de manera apropiada. Ver errores conocidos.
Errores conocidos
El driver The Sonics Silicon Backplane (ssb) crea conflictos con el driver wl (545388, broadcom-sta-common/README.Debian). Algunas veces al compilar el driver el módulo ssb si cargándose y evita que funcione correctamente wl, se puede solucionar recargando initramfs (con update-initramfs -u).
b44, b43, b43legacy y ssb son enviados a la blacklist por defecto al instalar broadcom-sta 5.10.91.9.3-3, esto evita el uso de dispositivos Ethernet soportados por b44.
Se experimentan desconecciones frecuentes. Esto puede ser resuelto deshabilitando la administración de energía del driver wl con iwconfig(8) (por ejemplo iwconfig eth1 power off).
- El modo monitoreo no es soportado.
Ver errores reportados en broadcom-sta.
Dispositivos Reportados
La página HowToIdentifyADevice/PCI explica como identificar un dispositivo PCI.
La siguiente lista se basa en el campo alias de modinfo wl compilado a partir de wheezy/broadcom-sta-dkms :
PCI: 14E4:0576 Broadcom Corporation BCM43224 802.11a/b/g/n PCI: 14E4:4311 Broadcom Corporation BCM4311 802.11b/g WLAN PCI: 14E4:4312 Broadcom Corporation BCM4311 802.11a/b/g PCI: 14E4:4313 Broadcom Corporation BCM4311 802.11a PCI: 14E4:4315 Broadcom Corporation BCM4312 802.11b/g LP-PHY PCI: 14E4:4328 Broadcom Corporation BCM4321 802.11a/b/g/n PCI: 14E4:4329 Broadcom Corporation BCM4321 802.11b/g/n PCI: 14E4:432A Broadcom Corporation BCM4321 802.11an Wireless Network Controller PCI: 14E4:432B Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller PCI: 14E4:432C Broadcom Corporation BCM4322 802.11b/g/n PCI: 14E4:432D Broadcom Corporation BCM4322 802.11an Wireless Network Controller PCI: 14E4:4353 Broadcom Corporation BCM43224 802.11a/b/g/n PCI: 14E4:4357 Broadcom Corporation BCM43225 802.11b/g/n PCI: 14E4:4358 Broadcom Corporation BCM43227 802.11b/g/n PCI: 14E4:4359 Broadcom Corporation BCM43228 802.11a/b/g/n PCI: 14E4:435A Broadcom Corporation (Device name unknown) PCI: 14E4:4727 Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller PCI: 14E4:A99D Broadcom Corporation (Device name unknown)
Cómo compilar el driver oficial
Yo lo he probado con el dispositivo BCM43227 y no da problemas de inestabilidad. En la documentación oficial del driver (inglés: http://www.broadcom.com/docs/linux_sta/README.txt), se nombran los dispositivos 4311, 4312, 4313, 4321, 4322, 43224, 43225, 43227 y 43228
Preparar herramientas necesarias:
# apt-get install build-essential linux-headers-$(uname -r)
Descargar la versión (32 o 64 bits) desde la página oficial: http://www.broadcom.com/support/802.11/linux_sta.php/
Descomprimir y colocarse en la nueva carpeta del driver, por ejemplo (dependiendo de la ruta y del nombre del archivo):
# tar -xf hybrid-portsrc.tar.gz # cd hybrid-portsrc
Descargar parches (si no se aplican, los logs se llenan del error wl_cfg80211_get_station : Could not get rssi (-22). Si alguien sabe dónde ponerlos para Debian, mejor): http://aur.archlinux.org/packages.php?ID=19514&comments=all&detail=1 . Colocar los 3 archivos .patch en la carpeta donde está el driver.
Aplicar los parches:
# patch -p1 -i license.patch # patch -p1 -i linux-recent.patch # patch -p1 -i user-ioctl.patch
Compilar (esto crea un archivo wl.ko en el directorio raíz del driver, que es el módulo para tu configuración específica de dispositivo):
# make clean # make
Desactivar y poner en lista negra los drivers que puedan producir conflictos
# rmmod b43 # rmmod ssb # rmmod bcma # rmmod wl # echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf # echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf # echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf
Activar módulos adicionales necesarios para poder usar el módulo wl:
# modprobe lib80211 # modprobe cfg80211
Activar el módulo:
# insmod wl.ko
Verificar que el dispositivo tiene una interfaz disponible:
# iwconfig
Configurar su interfaz inalámbrica de manera apropiada.
Vea también
bcm43xx - Dispositivos inalámbricos Broadcom 43xx
Enlaces Externos
http://www.broadcom.com/support/802.11/linux_sta.php - 802.11 Linux STA driver
