Installiamo i driver ipw3945 al posto degli iwl3945 su Ubuntu 8.04
Scritto da jackyaway in Driver, Hardy Heron, wireless
Questa guida è rivolta a tutti coloro che non sono ancora soddisfatti dei driver wireless iwl3945 ma che, allo stesso tempo, non vogliono rinunciare ad avere un kernel o una distribuzione aggiornati. Come tutti ormai saprete, i driver ipw3945 sono un progetto morto, che come tale non compila sui kernel d’ultima generazione, quelli a partire dal 2.6.24.
E’ però possibile applicare una patch ai driver ipw3945 per far si che compilino e funzionino correttamente anche sul più aggiornato dei kernel.
Bisogna fare così :
- Per prima cosa blacklistiamo i driver iwl3945
sudo gedit /etc/modprobe.d/blacklist
e aggiungiamo in fondo al file le seguenti linee
# blacklist new iwl3945
blacklist iwl3945
blacklist mac8021in questo modo evitiamo che i driver iwl3945 vengano caricati all’avvio del sistema.
- Riavviamo il sistema.
- Scarichiamo il firmware ucode da qui, salvandolo nella nostra home, quindi scompattiamo l’archivio
sudo xzvf ipw3945-ucode-1.14.2.tgz
entriamo nella directory appena scompattata e copiamo solo il firmware ipw3945.ucode in /lib/firmware:
cd ~/ipw3945-ucode-1.14.2
sudo cp -v ipw3945.ucode /lib/firmware - Scarichiamo il demone regolatore da qui, lo salviamo nella nostra home, lo scompattiamo e lo spostiamo in /sbin
tar xzvf ipw3945d-1.7.22.tgz
cd ~/ipw3945d-1.7.22/x86
sudo mv ipw3945d /sbin - Adesso scarichiamo la patch da qui grazie; ed i driver ipw3945 da qui, salvando entrambi i files nella HOME.
- Scompattiamo i driver nella nostra home:
tar xzvf ipw3945-1.2.2.tgz
copiamo la patch all’interno della cartella estratta
cp ~/ipw3945-1.2.2.patch ~/ipw3945-1.2.2
quindi la applichiamo:
cd ~/ipw3945-1.2.2
patch -p1 < ipw3945-1.2.2.patchin File to patch: scriviamo ipw3945.h
- Applicata la patch possiamo compilare i driver
make SHELL=/bin/bash IEEE80211_IGNORE_DUPLICATE=y
sudo make install SHELL=/bin/bash -
sudo chmod 777 /sbin/ipw*
- Creiamo il file /etc/modprobe.d/ipw3945
sudo gedit /etc/modprobe.d/ipw3945
ed inseriamo le seguenti linee
install ipw3945 /sbin/modprobe -i ipw3945 ; sleep 0.5 ; /sbin/ipw3945d --quiet
remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r -i ipw3945salviamo e chiudiamo il file.
-
sudo modprobe ipw3945
- riavviamo il sistema
Articoli (RSS)
Ciao! Ho provato la tua guida ma non mi funziona… Ho seguito tutti i passi necessari ma nonostante questo non c’è stato verso di vedere il wi-fi funzionante….
Più nel dettaglio se lancio “ifconfig -a” non vengono fuori interfacce apparte l’ethernet e la loopback.
Ciao!
Ciao!
Potresti essere un pò più preciso nell’esporre il problema, che tipo di errori hai incontrato, che sistema hai, kernel….
Ciao ho provato la tua guida ma nemmeno a me parte…compilando con il terminale mi dà questo messaggio chi mi puo aiutare????ma queste indicazione fanno funzionare anche il mode monitor???
alessandro@ubuntu:~$ make SHELL=/bin/bash IEEE80211_IGNORE_DUPLICATE=y
make: *** No targets specified and no makefile found. Stop.
alessandro@ubuntu:~$ cd ~/ipw3945-1.2.2
alessandro@ubuntu:~/ipw3945-1.2.2$ make SHELL=/bin/bash IEEE80211_IGNORE_DUPLICATE=y
Using ieee80211 subsystem version API v1 from:
Base: /lib/modules/2.6.27-7-generic/build/
Path: /lib/modules/2.6.27-7-generic/build/include/
EXTRA_CFLAGS = -DIPW3945_COMPAT=1 -g -Wa,-adhlms=check_inc.lst
mkdir -p /home/alessandro/ipw3945-1.2.2/tmp/.tmp_versions
make -C /lib/modules/2.6.27-7-generic/build M=/home/alessandro/ipw3945-1.2.2 MODVERDIR=/home/alessandro/ipw3945-1.2.2/tmp/.tmp_versions modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.27-7-generic’
CC [M] /home/alessandro/ipw3945-1.2.2/ipw3945.o
/home/alessandro/ipw3945-1.2.2/ipw3945.c: In function ‘ipw_start_association’:
/home/alessandro/ipw3945-1.2.2/ipw3945.c:4457: error: implicit declaration of function ‘ieee80211_tx_frame’
/home/alessandro/ipw3945-1.2.2/ipw3945.c: In function ‘ipw_build_tx_cmd_hwcrypto’:
/home/alessandro/ipw3945-1.2.2/ipw3945.c:14931: warning: passing argument 2 of ‘memcpy’ makes pointer from integer without a cast
{standard input}: Assembler messages:
{standard input}:9: Warning: can’t open .lst: Permission denied
GAS LISTING page 1
1 .file “ipw3945.c”
9 .Ltext0:
GAS LISTING page 2
DEFINED SYMBOLS
*ABS*:0000000000000000 ipw3945.c
NO UNDEFINED SYMBOLS
make[2]: *** [/home/alessandro/ipw3945-1.2.2/ipw3945.o] Error 1
make[1]: *** [_module_/home/alessandro/ipw3945-1.2.2] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.27-7-generic’
make: *** [modules] Error 2
Ciao Alessandro,
da quel che vedo, hai Ubuntu 8.10 e sinceramente non so se è possibile utilizzare gli ipw3945 anche col kernel 2.6.27. Perchè la patch che viene applicata è testata sul 2.6.26 di Hardy Heron. Forse hanno patchato anche per il 2.6.27 ma non ne so nulla….
Ciao ragazzi se volete potete fare un salto al mio blog dove di fare un salto alla seguente pagina del mio blog: http://tonyfire.altervista.org/2009/06/23/compilare-i-driver-ipw3945-per-ubuntu-con-kernel-262711/ dove ho scritto un tutorial per permettere la compilazione e l’installazione dei suddetti driver.