Configurando o Wi-Fi com uma Broadcom BCM4312 no Debian

O módulo que utilizaremos para fazer nossa placa Wi-Fi funcionar, será o wl, além da BCM 4312, o módulo suporta os seguintes dispositivos: BCM4311, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227, BCM43228.

Instalando e configurando o módulo

Primeiro você deve se autenticar como sudo:

su root

Caso não tenha adicionado os pacotes contrib e non-free aos seus espelhos. Faça isso! No caso, eu utilizo o Debian sid, então meu arquivo /etc/apt/sources.list ficou assim:

# 

deb http://ftp.br.debian.org/debian/ sid main contrib non-free

Agora atualize a lista de pacotes:

apt-get update

Instale o module-assistant e o wireless-tools:

apt-get install -y module-assistant wireless-tools

Compile e instale um dos pacotes broadcom-sta-modules- para o seu sistema, utilizando o assistente de módulos (*module-assistant):

m-a a-i broadcom-sta

Automaticamente, ele deve adicionar a lista negra do modprobe os pacotes que podem conflitar e acabar não permitindo que sua placa de Wi-Fi funcione corretamente, mas caso ele não adicione, vá até o seu arquivo /etc/modprobe.d/broadcom-sta-common.conf e cole todas as linhas abaixo:

# wl module from Broadcom conflicts with ssb
# We must blacklist the following modules:
blacklist b43
blacklist b43legacy
blacklist b44
blacklist bcma
blacklist brcm80211
blacklist brcmsmac
blacklist ssb
install wl /sbin/modprobe --ignore-install wl $CMDLINE_OPTS

Assim, sempre que o seu sistema operacional for iniciado, ele forçará o carregamento do módulo wl e cancelará os outros módulos que conflitarão, caso tenham sido carregados.

Agora vamos atualizar o ramdisk, para que os arquivos que foram modificados sejam atualizados:

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

Mate os módulos que causarão conflitos e que podem estar sendo carregados:

modprobe -r b43 b43legacy b44 bcma brcm80211 brcmsmac ssb

Inicie o módulo wl:

modprobe wl

Configurando as interfaces de rede

Este é um passo que não deve ser ignorando, você deve abrir o arquivo /etc/network/interfaces e configurá-lo para que ele habilite a sua conexão de rede. Caso não saiba qual seja, digite ip addr show e poderá ver, a placa de rede Wi-Fi sempre começa com wlan (i.e. wlan1, wlan2, wlan3…).

No meu caso, o meu arquivo /etc/network/interfaces está da seguinte maneira:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

auto wlan0
allow-hotplug wlan0

Após terminar de configurar o seu arquivo, salve-o e recarregue-o:

/etc/init.d/networking restart

Ou:

service networking restart

Caso não realize nenhum destes procedimentos, sua placa Wi-Fi pode até se conectar a alguma rede através de gerenciadores de conexão pelo X, mas provavelmente não carregará nenhum site pelo navegador.

Para mais informações sobre como configurar a sua rede Wi-Fi pelo arquivo /etc/network/interfaces , acesse WiFi/HowToUse.