Tarjetas Wireless Broadcom con kernel 2.6.38 en Debian

Después del muy esperado upgrade al kernel 2.6.38, es probable que las tarjetas wireless Broadcom no funcionen en Debian, ya que el kernel es completamente libre, pero los drivers para esta marca no lo son. Aquí les explico cómo habilitar las tarjetas Broadcom 4311, 4312, 4313, 4321, 4322, 43224, 43225, 43227 y 43228 en Debian Squeeze, Lenny y Wheezy.


Antes de empezar, si no están seguros de cuál es tu tarjeta wireless, deben correr el siguiente comando en la consola:

lspci

Y aparecerá la lista de todos los PCI en la computadora. La línea que diga Network controller es la que que indica la tarjeta wireless. Se mira algo así:

01:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)

Con eso ya pueden asegurarse de cuál es su tarjeta wireless, en este caso, la 4312 mencionada al inicio del artículo.

Squeeze

1. Agregar el componente «non free» a /etc/apt/sources.list en caso de que no lo tengan. Un ejemplo es:

# Debian Squeeze/6.0
deb http://ftp.us.debian.org/debian squeeze main contrib non-free

2. Actualizar la lista de paquetes disponibles.

# aptitude update

3. Instalar los paquetes module-assistant y wireless-tools

# aptitude install module-assistant wireless-tools

4. Compilar e instalar el paquete broadcom-sta-modules-* para su sistema, utilizando Module-Assistant

# m-a a-i broadcom-sta

5. Para las tarjetas BCM4313, BCM43224 Y BCM43225, agregar a blacklist el módulo brcm80211, para evitar que entren en conflicto con su soporte.

# echo blacklist brcm80211 >> /etc/modprobe.d/broadcom-sta-common.conf

6. Reconstruir el ramdisk inicial, y agregar a blacklist los módulos definidos en el archivo /etc/modprobe.d/broadcom-sta-common.conf con initramfs

# update-initramfs -u -k $(uname -r)

7. Descargar los módulos conflictivos

# modprobe -r b44 b43 b43legacy ssb brcm80211

8. Cargar el módulo wl

# modprobe wl

9. Verificar que el dispositivo tenga una interfaz disponible

# iwconfig

10. Configurar la interfaz inalámbrica

Lenny

1. Instalar los paquetes build-essential, debhelper, module-assistant, quilt y wireless tools

# aptitude update
# aptitude install build-essential debhelper module-assistant quilt wireless-tools

2. Descargar manualmente el paquete squeeze/broadcom-sta-source de alguno de los mirrors en http://packages.debian.org/squeeze/all/broadcom-sta-source/download

$ wget http://ftp.us.debian.org/debian/pool/non-free/b/broadcom-sta/broadcom-sta-source_5.60.48.36-2_all.deb

3. Descargar manualmente el paquete squeeze/broadcom-sta-common de alguno de los mirrors en http://packages.debian.org/squeeze/all/broadcom-sta-common/download

$ wget http://ftp.us.debian.org/debian/pool/non-free/b/broadcom-sta/broadcom-sta-common_5.60.48.36-2_all.deb

4. Instalar los paquetes squeeze/broadcom-sta-common y squeeze/broadcom-sta-source con dpkg

# dpkg -i broadcom-sta-*deb

5. Compilar e instalar el paquete broadcom-sta-modules-* para su sistema, utilizando Module-Assistant

# m-a a-i broadcom-sta

6. Para las tarjetas BCM4313, BCM43224 Y BCM43225, agregar a blacklist el módulo brcm80211, para evitar que entren en conflicto con su soporte.

# echo blacklist brcm80211 >> /etc/modprobe.d/broadcom-sta-common.conf

7. Reconstruir el ramdisk inicial, y agregar a blacklist los módulos definidos en el archivo /etc/modprobe.d/broadcom-sta-common.conf con initramfs

# update-initramfs -u -k $(uname -r)

8. Descargar los módulos conflictivos

# modprobe -r b44 b43 b43legacy ssb brcm80211

9. Cargar el módulo wl

# modprobe wl

10. Verificar que el dispositivo tenga una interfaz disponible

# iwconfig

11. Configurar la interfaz inalámbrica

Wheezy

1. Agregar un componente «non free» a /etc/apt/sources.list en caso de que no lo tengan. Un ejemplo es:

# Debian Wheezy (testing)
deb http://ftp.us.debian.org/debian wheezy main contrib non-free

2. Actualizar la lista de paquetes disponibles.

# aptitude update

3. Instalar los paquetes module-assistant y wireless-tools

# aptitude install module-assistant wireless-tools

4. Compilar e instalar el paquete broadcom-sta-modules-* para su sistema, utilizando Module-Assistant

# m-a a-i broadcom-sta

5. Descargar los módulos conflictivos

# modprobe -r b44 b43 b43legacy ssb brcm80211

6. Cargar el módulo wl

# modprobe wl

7. Verificar que el dispositivo tenga una interfaz disponible

# iwconfig

8. Configurar la interfaz inalámbrica

Fuente: http://wiki.debian.org/wl