#format wiki #LANGUAGE it <
> <> = Downgrade dei nuovi moduli iwl3945 ai precedenti ipw3945 = == Introduzione == Questa guida è rivolta a tutti coloro che dopo aver provato i nuovi driver Iwl3945 sviluppati per i dispositivi wireless della Intel, hanno problemi con l'utilizzo della propria scheda wireless e non riescono a utilizzarla efficacemente. Per la risoluzione di queste problematiche procederemo con il download dei "vecchi" driver ipw3945, al loro patching (per permettere che vengano caricati correttamente dall'ultima versione del kernel Linux attualmente supportata '''2.6.27.11''') e infine alla loro installazione. == Preparativi == Prima di procedere è bene aggiornare il kernel della nostra distribuzione Ubuntu all'ultimo kernel disponibile. Questa operazione puo' essere espletata aprendo il terminale e lanciando i comandi: {{{ sudo apt-get install update sudo apt-get install upgrade }}} E' opportuno inoltre procurarsi tutti gli strumenti indispensabili per la corretta compilazione e installazione dei driver ipw, vale a dire: * '''Driver''' [[http://prdownloads.sourceforge.net/ipw3945/ipw3945-1.2.2.tgz]] * '''Firmware''' [[http://bughost.org/ipw3945/ucode/ipw3945-ucode-1.14.2.tgz]] * '''Patch''' [ipw3945-1.2.2-kernel-2.6.27.patch] * '''Demone''' [[http://snapshot.debian.net/archive/2007/08/06/debian/pool/non-free/i/ipw3945d/ipw3945d_1.7.22-5_i386.deb]] Nella descrizione che segue, sebbene sia stato volutamente omesso il comando {{{sudo}}}, ricordiamo che quest'ultimo è quasi sempre necessario in quanto le operazioni che verranno illustrate riguarderanno l'intero SO e non un account locale. == Compilazione nuovi driver == Creare una directory di "lavoro" (ad es. {{{ipw3945}}}) e collocare al suo interno archivi e patch precedentemente scaricati. Da console, è possibile procedere alla loro estrazione mediante il comando: {{{ tar xzf ipw3945-1.2.2.tgz tar xzf ipw3945-ucode-1.14.2.tgz }}} Prima di continuare con la compilazione dei driver, è opportuno applicare la patch ai files `ipw3945.c` e `ipw3945.h`. A tal fine dall'interno della directory `~/ipw3945/ipw3945-1.2.2` digitare: {{{ patch -p1 < ../ipw3945-1.2.2-kernel-2.6.27.patch }}} Passare infine alla compilazione dei moduli vera e propria tramite il comando: {{{ make SHELL=/bin/bash }}} == Configurazione del «nuovo» ambiente == E' arrivato il momento della rimozione del modulo iwl3945 caricato precedentemente dal kernel: {{{ modprobe -r iwl3945 }}} Onde evitare che il medesimo modulo venga caricato all'avvio, è necessario aggiungere le seguenti righe al file `/etc/modprobe.d/blacklist`: {{{ blacklist iwl3945 blacklist mac80211 blacklist cfg80211 }}} Inoltre, creare il file `/etc/modprobe.d/00local`: {{{ touch /etc/modprobe.d/00local }}} E aggiungere al suo interno le seguenti righe: {{{ #disable iwl3945 to allow ipw3945 install iwl3945 /bin/true }}} Adattare infine le regole del demone udev esistenti con i driver Ipw. Questo può essere fatto modificando il contenuto del file `/etc/udev/rules.d/70-persistent-net.rules` che fa riferimento alla seguente riga: {{{ SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:13:02:03:d7:d1", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0" }}} In particolare, commentare la riga precedente e aggiungere i nuovi parametri come mostrato nel seguente esempio: {{{ #SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:13:02:03:d7:d1", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0" SUBSYSTEMS=="pci", DRIVERS=="iwl3945", ATTR{type}=="1", NAME="wlan0" SUBSYSTEMS=="pci", DRIVERS=="ipw3945", NAME="wlan0" }}} == Installazione dei driver compilati == Posizionarsi all'interno della directory {{{ipw3945}}} precedentemente creata e copiare il firmware nell'apposita directory: {{{ cp ipw3945-ucode-1.14.2/ipw3945.ucode /lib/firmware/ }}} Installare quindi il demone e quant'altro necessario al caricamento dei driver in fase di avvio: {{{ dpkg -i ipw3945d_1.7.22-5_i386.deb }}} Infine, dall'interno della directory `ipw3945/ipw3945-1.2.2`, installare i driver compilati mediante il comando: {{{ make install SHELL=/bin/bash }}} Prima di poter testare i driver appena installati è opportuno, ricordiamo, riavviare il SO o in alternativa il solo demone udev. Quest'ultimo può essere riavviato digitanto da console: {{{ /etc/init.d/udev restart }}} == Conclusioni == La guida illustrata è stata testata su un notebook Hp Pavilion dv2000. Prove e test di configurazione sono state eseguiti senza l'ausilio di alcun tool grafico ed esclusivamente da console. Per ulteriori riferimenti si rimanda alla [[Hardware/DispositiviSenzaFili|Sezione dedicata ai dispositivi senza fili]] del wiki == Riferimenti == [[http://www.ubuntugeek.com/using-ipw3945-instead-iwl3945-in-hardy.html]] ---- CategoryHomepage