Esta dica é para quem possui uma placa de rede Attansic L2 100 Mbit Ethernet Adapter, como na saída de meu
lspci
02:00.0 Ethernet controller: Attansic Technology Corp. L2 100 Mbit Ethernet Adapter (rev a0)
Para fazê-la funcionar no Slackware 12, com o kernel padrão (2.6.21.5-smp) siga os passos abaixo:
1º passo - Pegue o driver em:
Você deve ter percebido que o driver está compactado no formato .rar. Portanto, você deve ter o unrar instalado. Baixe-o no
Linuxpackages e instale-o com o
installpkg unrar*.tgz
2º passo - Dentro do diretório onde você salvou o arquivo, descompacte-o:
$ mkdir L2-linux-driver
$ unrar e L2-linux-driver_new.rar L2-linux-driver/
Nota: se desejar usar a interface gráfica, simplesmente clique com o botão direito do mouse e selecione "Extrair"
3º passo - Aplicando o patch para que ele seja compilado sem erros:
$ cd L2-linux-driver/src
$ vim at_main.c
Na linha 1488, onde consta:
adapter->vlgrp->vlan_devices[vid]=NULL;
Deixe assim:
adapter->vlgrp->vlan_devices_arrays[vid]=NULL;
E, na linha 1508, onde diz:
if(!adapter->vlgrp->vlan_devices[vid])
Deve ficar:
if(!adapter->vlgrp->vlan_devices_arrays[vid])
Agora:
$ vim at_hw.c
Comente a linha 539, que originalmente está assim:
u16 phy_val;
E deve ficar desta forma:
// u16 phy_val;
Uma vez tendo sido feita as alterações...
4º passo - Instale o driver:
$ su
# make install
5º passo - Carregue o módulo:
# modprobe atl2
Para ver se está tudo OK:
# ifconfig eth0 0.0.0.0
# ifconfig -a
6º passo - Certifique de que o módulo seja carregado automaticamente no boot.
# vim /etc/rc.d/rc.modules
Procure a linha:
### Network device support ###
Você verá que daí para baixo tem vários opções de placas suportadas. Insira em um local apropriado:
# Attansic Technology Corp. L2 Ethernet Adapter
/sbin/modprobe atl2
Pronto! Placa funcionando!:-)
Fonte:
Uma observação importante: em virtude do patch a ser aplicado, posso garantir que funciona no kernel que mencionei - 2.6.21.5-smp. Não sei precisar se irá funcionar caso você estiver usando um kernel mais recente.
Enfim, é isto!
Grande abraço.
Francisco Ambrozio.