Etiquetas

, , , , , , , ,

Quise instalar Debian con el nuevo instalador para Debian 7 que se encuentra en la versión RC1 al momento de publicar este post. La instalación la hice en una Laptop Dell Latitude E5520 como comento en este post http://www.stumbleupon.com/su/2yjaUL/www.comoinstalarlinux.com/probando-debian-installer-7-rc1/

Al terminar la instalación me di cuenta que no detecto la tarjeta WiFi y que no funciona. y estos son los pasos que seguí para hacer funcionar el WiFi Broadcom BCM4313 en debian.

Para saber cual tarjeta es o que controlador tiene puedes usar este comando

$  lspci | grep 802
02:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)

Para descargar el controlador fui a la página de broadcom y busque “linunx BCM4313” y me dirigí a esta página:

http://www.broadcom.com/support/802.11/linux_sta.php

Ahí descargue el archivo del controlador, en mi caso de la versión para 64 bits del driver y descargue este archivo:
hybrid-portsrc_x86_64-v5_100_82_112.tar.gz

El siguiente paso es descomprimirlo y ponerlo en una carpeta llamada driver_wl con el siguiente comando


$ mkdir driver_wl
$ mv hybrid-portsrc_x86_64-v5_100_82_112.tar.gz driver_wl
$ cd driver_wl
$ tar -zxvf hybrid-portsrc_x86_64-v5_100_82_112.tar.gz

Lo siguiente es compilar el Driver, si no tienes instalados los paquetes de desarrollo lo puedes hacer con estos comandos como root:


$ su -
# apt-get install build-essential linux-headers-$(uname -r)
# exit
$

Con estos paquetes instalados ahora puedes compilar el driver.
En este punto a mi me apareció un error al momento de compilarlo arrojó este mensaje:


KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: se ingresa al directorio `/usr/src/linux-headers-3.2.0-4-amd64'
Wireless Extension API specified in command line
Using Wireless Extension API
LD      /home/lmx/Descargas/driver_wl/built-in.o
CC [M]  /home/lmx/Descargas/driver_wl/src/shared/linux_osl.o
CC [M]  /home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.o
/home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.c:388:2: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
/home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.c:388:2: warning: initialization from incompatible pointer type [enabled by default]
/home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.c:388:2: warning: (near initialization for ‘wl_netdev_ops.ndo_validate_addr’) [enabled by default]
make[4]: * [/home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.o] Error 1
make[3]: * [module/home/lmx/Descargas/driver_wl] Error 2
make[2]: * [sub-make] Error 2
make[1]: * [all] Error 2
make[1]: se sale del directorio `/usr/src/linux-headers-3.2.0-4-amd64'
make: * [all] Error 2

y se corrige aplicando un parche. si te sucede esto lo puedes solucionar con esos pasos:

1 Descargas el parche desde http://www.mindwerks.net/wp-content/uploads/2011/11/bc_wl_abiupdate.patch

2 mueve el archivo .patch a la carpeta donde se descomprimir el archivo .tar.gz en mi caso lo realicé con:

 $ mv ~/Descargas/bc_wl_abiupdate.patch ~/Descargas/driver_wl

3 Aplicar el patch con el siguiente comando:


$ cd ~/Descargas/driver_wl
$ patch -p0 src/wl/sys/wl_linux.c < bc_wl_abiupdate.patch

Una vez que esta aplicado el patch (solo si te muestra el error anterior) puedes compilar el controlador y ejecutarlo con los siguientes comandos:


# make
# make install
# depmod
# modprobe wl

Y en cuanto se ejecuta el ultimo comando tu tarjeta WiFi se activa y puedes conectarte a tu red local, a internet o lo que gustes. Esta es la salida que se muestra con los comandos anteriores.


# make
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: se ingresa al directorio `/usr/src/linux-headers-3.2.0-4-amd64'
Wireless Extension is the only possible API for this kernel version
Using Wireless Extension API
CC [M]  /home/lmx/Descargas/driver_wl/src/wl/sys/wl_linux.o
CC [M]  /home/lmx/Descargas/driver_wl/src/wl/sys/wl_iw.o
CC [M]  /home/lmx/Descargas/driver_wl/src/wl/sys/wl_cfg80211.o
LD [M]  /home/lmx/Descargas/driver_wl/wl.o
Building modules, stage 2.
Wireless Extension is the only possible API for this kernel version
Using Wireless Extension API
MODPOST 1 modules
WARNING: modpost: missing MODULE_LICENSE() in /home/lmx/Descargas/driver_wl/wl.o
see include/linux/module.h for more information
CC      /home/lmx/Descargas/driver_wl/wl.mod.o
LD [M]  /home/lmx/Descargas/driver_wl/wl.ko
make[1]: se sale del directorio `/usr/src/linux-headers-3.2.0-4-amd64'
root@debian-lmx:/home/lmx/Descargas/driver_wl# make install
install -D -m 755 wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/wl.ko
# depmod
# modprobe wl

Espero que te sirva y puedas hacer funcionar tu WiFi con esta tarjeta broadcom…