Um aviso: Não há garantias de que a nova versão do driver é compatível com o kernel antigo. Mas vale a pena tentar.
-
Encontre o driver mais novo no kernel. Existem duas opções: Você pode usar o driver original do kernel do kernel git, por exemplo, no link . É útil selecionar uma tag para encontrar a versão específica do kernel que você precisa. Faça o download dos arquivos
thedriver.h
ethedriver.c
específicos e coloque-os em um novo diretório.A segunda opção é buscar o novo kernel do Ubuntu a partir do link ou via
apt-get source ...
-
Instale os pacotes
build-essentials
elinux-kernel-headers
-
Agora, criamos um makefile para este módulo único, conforme mostrado em cyberciti.biz ,
thedriver.o
precisa ser substituído pelo nome do driver. Na pasta que contém o código do driver, crie um arquivoMakefile
com o seguinte conteúdo:obj-m += thedriver.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
-
Agora, neste diretório, digite
make
para compilar o driver. -
Se tudo funcionar bem, um arquivo
thedriver.ko
deve ter sido criado para ser colocado na pasta/lib/modules/$kernelversion/kernel/drivers
(não esqueça de criar um backup)