Compilando o Módulo da Placa Encore ENL832-TX-ICNT no Linux

Baixando o drive

wget http://www.encore-usa.com/download/driver/ENL832-TX-ICNT_Drivers.zip

Descompactando o arquivo:

unzip ENL832-TX-ICNT_Drivers.zip

Entrando no diretório:

cd ENL832-TX-ICNT_Drivers/Linux

  • * Agora vamos editar o arquivo “sundance_main_c”:

Vá na linha 1400 e altere :

pci_dma_sync_single

Por:

pci_dma_sync_single_for_cpu

Vá na linha 1653 e apague a linha toda, que contem:

strcpy(info.bus_info, np->pci_dev->slot_name);

  • Salve e feche o arquivo

Compilando

make all

Opcionais:

Se acontecer o erro abaixo:

make -C /lib/modules/2.6.18-8.1.8.el5/build SUBDIRS=/root/placarede/ENL832-TX-ICNT_Driver/Linux
modules
make[1]: Entering directory `/usr/src/kernels/2.6.18-8.1.8.el5-i686′
CC [M] /root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.o
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c:221:2: error: invalid preprocessing
directive #MODULE_PARM
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c:222:2: error: invalid preprocessing
directive #MODULE_PARM
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c:223:2: error: invalid preprocessing
directive #MODULE_PARM
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c:224:2: error: invalid preprocessing
directive #MODULE_PARM
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c: In function â__check_mediaâ:
/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.c:228: warning: return from incompatible
pointer type
make[2]: *** [/root/placarede/ENL832-TX-ICNT_Driver/Linux/sundance_main.o] Error 1
make[1]: *** [_module_/root/placarede/ENL832-TX-ICNT_Driver/Linux] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.18-8.1.8.el5-i686′
make: *** [all] Error 2

Abra o arquivo sundance_main.c e procure por

1. include
2. include
3. include
4. include

e adicione a entrada

#include
#include
#include
#include
#include

Nas linhas com problema, comente e altere como abaixo

module_param(debug, int,0); //MODULE_PARM(debug, “i”);
module_param(rx_copybreak,int,0); //MODULE_PARM(rx_copybreak, “i”);
module_param(media,charp,0); //MODULE_PARM(media, “1-” __MODULE_STRING(MAX_UNITS) “s”);
module_param(flowctrl,int,0); //MODULE_PARM(flowctrl, “i”);

Compile novamente

make all

  • Isso irá gerar o arquivo sundance.ko e sundance.o.

Copie o arquivo sundance.ko para o diretório:

/lib/modules/`uname -r`/kernel/drivers/net

Carregue o módulo com o comando:

modprobe sundance

Caso o módulo não carregue, salve seus arquivo e:

shutdown -r now

Agora basta configurar a placa de rede. 🙂

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s