Instalando a placa Encore ENL832-TX-ICNT no Linux

A seguir tem um procedimento de como instalar a placa Encore ENL832-TX-ICNT no Linux.

Obs.: Você tem que ter o kernel-headers ou linux-headers instalado

1. Baixe o driver desta placa:

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

2. Descompacte o arquivo:

> unzip ENL832-TX-ICNT_Drivers.zip

3. Entre no diretório:

> cd ENL832-TX-ICNT_Drivers/Linux

Agora vamos editar o arquivo "sundance_main_c":

4. Vá na linha 1400 e altere :

pci_dma_sync_single

Por:

pci_dma_sync_single_for_cpu

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

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

6. Salve e feche o arquivo

7. Compilando

> make all

8. (Opcional) 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

9.(Opcional) Abra o arquivo sundance_main.c e procure por

e adicione a entrada

#include 
 * 1) include 
 * 1) include 
 * 2) include 
 * 3) include 

10.(Opcional) 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");

11. Compile novamente

> make all

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

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

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

13. Carregue o módulo com o comando:

> modprobe sundance

Agora basta configurar a placa de rede.

tags: enl832-tx-icnt linux driver