De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Ativando o wireless de notebooks Centrino no Linux

Colaboração: Carlos E. Morimoto

Data de Publicação: 16 de Junho de 2006

Os chipsets IPW2100 e IPW2200 são fabricados pela Intel e vendidos na forma de placas mini-PCI destinadas a notebooks. Elas são encontradas em notebooks com a tecnologia Centrino.

Trata-se na verdade de um golpe de marketing da Intel para vender mais placas, chipsets e processadores. Para usar a marca Centrino, um notebook precisa usar um processador Pentium M, um chipset Intel e uma placa wireless IPW2100 ou IPW2200. Os fabricantes acabam comprando então os três componentes da Intel, ao invés de usar uma placa wireless ou chipset de outro fabricante. Note que existem muitos notebooks com processadores Pentium M ou Celeron M e placas wireless de outros fabricantes, mas eles não são Centrino.

Embora raro, é possível comprar as placas separadamente para uso em outros modelos que possuam um slot mini-PCI livre (neste caso, as placas são vendidas sem a marca Centrino). Embora a foto não dê uma boa noção de perspectiva, as placas mini-PCI são realmente pequenas, quase do tamanho de uma caixa de fósforos.

Você pode verificar o modelo correto usando o lspci e em seguida baixar o driver no: http://ipw2100.sourceforge.net/ ou http://ipw2200.sourceforge.net/

Em ambos os casos, você precisará de dois arquivos. O driver propriamente dito e o firmware, novamente um arquivo separado. Como de praxe, os drivers são de código aberto mas o firmware não.

O driver em si já vem pré-instalado na maioria das distribuições e foi incluído oficialmente no Kernel a partir do 2.6.14, de forma que você já o encontrará pré-instalado em praticamente qualquer versão atual.

De qualquer forma, se você precisar instalá-lo ou atualizá-lo manualmente, basta baixar e descompactar o arquivo e rodar os comandos:

  # make
  # make install

Isto gerará e copiará os módulos ipw2200.ko, ieee80211.ko, ieee80211_crypt.ko e ieee80211_crypt_wep.ko para a pasta /lib/modules/2.6.x/kernel/drivers/net/wireless/.

Em seguida vem o passo que é quase sempre necessário: baixar o arquivo com o firmware (ipw2200-fw-2.4.tgz, no meu caso), descompactar e copiar os arquivos para dentro da pasta /lib/firmware (em distribuições que usam o udev) ou /usr/lib/hotplug/firmware/ (nas distribuições que ainda usam o hotplug), como em:

  # cp -a ipw2200-fw-2.4.tgz /lib/firmware/
  # cd /lib/firmware/
  # tar -zxvf ipw2200-fw-2.4.tgz

A partir daí, a placa deve ser ativada automaticamente durante o boot. Caso você queira ativar e desativar o suporte manualmente, use os comandos:

  # modprobe ipw2200 

(para carregar)

  # modprobe -r ipw2200 

(para desativar)

Caso não tenha certeza sobre o uso do hotplug ou udev, não existe problema em copiar os arquivos para ambas as pastas, ou criar um link apontando para a outra. Ao ser carregado, o módulo procura os arquivos na pasta correta.

Uma pegadinha, é que existem várias versões do firmware disponíveis no http://ipw2200.sourceforge.net/firmware.php, acompanhando as diferentes versões do driver. A versão 2.4 funciona em conjunto com o driver de versão 1.07 até 1.10 (usado no Kurumin 6.0, por exemplo), enquanto o firmware versão 3.0 funciona em conjunto com o 1.11 em diante. Ao instalar uma nova versão do

Você pode checar qual é a versão instalada usando o comando:

  # modinfo ipw2200

ou

  modinfo ipw2100)

Ao instalar uma nova versão do firmware, tome sempre o cuidado de primeiro remover os arquivos da anterior, pois em muitos casos os nomes dos arquivos mudam de uma versão para a outra, fazendo com que os arquivos fiquem duplicados ao instalar por cima.

Se você estiver usando uma distribuição recente, que utilize o udev, pode existir um complicador a mais. O hotplug carrega automaticamente o firmware a partir da pasta /usr/lib/hotplug/hotplug/firmware quando o módulo é carregado. O udev também pode fazer isso automaticamente, desde que exista uma regra apropriada dentro do diretório /etc/udev/rules.d e que o executável /sbin/firmware_helper esteja disponível.

O grande problema é que muitas distribuições, com destaque para o Debian, propositalmente não incluem os dois componentes, talvez com o objetivo de dificultar a vida de quem quer carregar os firmwares proprietários do mal. Neste caso, você vai precisar instalar manualmente.

Comece baixando o código fonte do udev no http://www.us.kernel.org/pub/linux/utils/kernel/hotplug/. No meu caso, baixei o arquivo udev-081.tar.gz.

Descompacte o arquivo e, dentro da pasta que será criada, rode o comando:

  # make EXTRAS=extras/firmware

Isso vai compilar apenas o firmware_helper, dentro da pasta extras/firmware/, sem compilar o udev inteiro. O próximo passo é copiá-lo para dentro da pasta /sbin/. Verifique também se ele está com a permissão de execução ativa:

  # cp -a extras/firmware/firmware_helper /sbin/
  # chmod +x /sbin/firmware_helper 

Falta agora criar a regra que instrui o udev a usá-lo. Acesse a pasta /etc/udev/rules.d e crie o arquivo z99_firmware, contendo a linha:

  ACTION==add, SUBSYSTEM==firmware, RUN+=/sbin/firmware_helper

Esta regra diz que sempre que for encontrado um dispositivo cujo módulo precise carregar um determinado firmware, o udev deve executar o /sbin/firmware_helper, que se encarrega de fazer o carregamento. Para que a regra entre em vigor, reinicie o udev com o comando /etc/init.d/udev/restart.

Um último complicador, desta vez não relacionado com o driver é que em muitos notebooks o atalho de teclado para ativar e desativar o transmissor wireless é controlado via software e só funciona em conjunto com um driver específico. Você encontra uma lista detalhada dos notebooks problemáticos e dicas para ativar o transmissor em cada um no: http://rfswitch.sourceforge.net/?page=laptop_matrix.

Em alguns casos, é necessário carregar um módulo adicional, em outros é necessário alterar manualmente algum parâmetro do ACPI, enquanto em alguns (como no Asus M5) a única opção é dar um boot no Windows e ativar o transmissor usando o utilitário do fabricante. Estranhamente, neste caso a configuração é salva em algum lugar no CMOS, tornando-se definitiva.


Curso: Redes e servidores Linux

Gostou da dica? Venha fazer um curso com o autor:

Em São Paulo

Início: 24/07/2006 (segunda feira), término no sábado dia 29/07/2006.

Horários: Este curso é realizado de segunda a sexta, das 12:00 às 18:00 e no sábado das 9:00 às 18:00 (com intervalo para almoço). Espaços para tirar dúvidas meia hora antes e depois das aulas.

Local: Av. Paulista, 726, 17° andar - São Paulo - SP

Matrículas nos telefones: (11) 6452-2113 ou (11) 8344-8453 com Cristiane, ou Carlos Machado, ou através do <compras (a) guiadohardware net>

Conheça também alguns dos livros escritos pelo Carlos Morimoto:

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Carlos E. Morimoto