Old:Installare i driver conexant accessrunner: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
(Aggiunto template autori)
mNessun oggetto della modifica
Riga 36: Riga 36:
</pre>
</pre>


Prendiamo nota dalla riga <tt>P:</tt> dei campi <tt>Vendor</tt> e <tt>ProdID</tt> che identificano il chipset del modem e notiamo che alla voce <tt>Driver</tt> c'è scritto <tt>none</tt>, segno che in effetti state seguendo questa guida per qualcosa ;-).  
Prendiamo nota dalla riga <code>P:</code> dei campi <code>Vendor</code> e <code>ProdID</code> che identificano il chipset del modem e notiamo che alla voce <code>Driver</code> c'è scritto <code>none</code>, segno che in effetti state seguendo questa guida per qualcosa ;-).  
Controllate se <code>Vendor</code> e <code>Product ID</code> del vostro modem corrispondono ad uno dei [http://accessrunner.sourceforge.net/modems.shtml modem supportati].
Controllate se <code>Vendor</code> e <code>Product ID</code> del vostro modem corrispondono ad uno dei [http://accessrunner.sourceforge.net/modems.shtml modem supportati].
Se corrispondono ad un modem non supportato, provate a fare una ricerca nella [http://sourceforge.net/mailarchive/forum.php?forum_id=43894 mailing list del progetto] per vedere se (ed eventualmente come) qualcun altro è riuscito a risolvere il vostro problema.  
Se corrispondono ad un modem non supportato, provate a fare una ricerca nella [http://sourceforge.net/mailarchive/forum.php?forum_id=43894 mailing list del progetto] per vedere se (ed eventualmente come) qualcun altro è riuscito a risolvere il vostro problema.  
Riga 51: Riga 51:
$ cvs -z3 -d:server:anonymous@cvs.sourceforge.net:/cvsroot/accessrunner co -P utils
$ cvs -z3 -d:server:anonymous@cvs.sourceforge.net:/cvsroot/accessrunner co -P utils
</pre>
</pre>
altrimenti dovrete usare un altro computer connesso ad internet, aprire [http://accessrunner.cvs.sourceforge.net/accessrunner questa pagina] (che è la simulazione web del cvs) e scaricare i quattro file contenuti nella cartella <tt>utils</tt>.  
altrimenti dovrete usare un altro computer connesso ad internet, aprire [http://accessrunner.cvs.sourceforge.net/accessrunner questa pagina] (che è la simulazione web del cvs) e scaricare i quattro file contenuti nella cartella <code>utils</code>.  
Ad ogni modo dopo esserci procurati le utils dobbiamo compilarle:
Ad ogni modo dopo esserci procurati le utils dobbiamo compilarle:
<pre>
<pre>
Riga 57: Riga 57:
$ make
$ make
</pre>
</pre>
*Nel caso in cui il modem si identifichi con l'ID <tt>0xcafe</tt> (<tt>0x</tt> sta per esadecimale), vi serve anche la ROM di boot che scaricate ad esempio così
*Nel caso in cui il modem si identifichi con l'ID <code>0xcafe</code> (<code>0x</code> sta per esadecimale), vi serve anche la ROM di boot che scaricate ad esempio così
<pre>
<pre>
$ wget http://www.olitec.com/pub/USBADSLV151-1008fr.tar.gz
$ wget http://www.olitec.com/pub/USBADSLV151-1008fr.tar.gz
Riga 113: Riga 113:
Se il kernel che avete installato non comprende ancora il modulo cxacru, potete compilarlo e installarlo a parte. Per questo sono sufficienti gli headers del kernel, ma vanno bene anche i sorgenti completi.  
Se il kernel che avete installato non comprende ancora il modulo cxacru, potete compilarlo e installarlo a parte. Per questo sono sufficienti gli headers del kernel, ma vanno bene anche i sorgenti completi.  


{{Box|Nota:|alcuni kernel tendono ad essere particolarmente esigenti riguardo la versione del compilatore con cui compilate il modulo, e rifiuteranno di caricarlo se usate una versione di gcc diversa da quella con cui è stato compilato il kernel: controllate la versione del compilatore che vi serve con <tt>cat /proc/version</tt> (vale solo per il kernel corrente).}}  
{{Box|Nota:|alcuni kernel tendono ad essere particolarmente esigenti riguardo la versione del compilatore con cui compilate il modulo, e rifiuteranno di caricarlo se usate una versione di gcc diversa da quella con cui è stato compilato il kernel: controllate la versione del compilatore che vi serve con <code>cat /proc/version</code> (vale solo per il kernel corrente).}}  


Se avete scaricato i pacchetti deb con gli headers (di solito sono due pacchetti: uno generico e uno relativo alla vostra architettura) dovete installarli:
Se avete scaricato i pacchetti deb con gli headers (di solito sono due pacchetti: uno generico e uno relativo alla vostra architettura) dovete installarli:
Riga 134: Riga 134:


==Compilazione e installazione del kernel==
==Compilazione e installazione del kernel==
Nel caso abbiate deciso di compilare un nuovo kernel installate il pacchetto <tt>kernel-source</tt> (<tt>linux-source</tt>).
Nel caso abbiate deciso di compilare un nuovo kernel installate il pacchetto <code>kernel-source</code> (<code>linux-source</code>).
Qui supporremo che un utente non privilegiato non abbia diritto di scrittura nella directory <tt>/usr/src</tt> (come imho dovrebbe essere), quindi tutti i comandi successivi devono essere dati da root oppure usando un programma che vi dia pari diritti per queste azioni (per es. <tt>sudo</tt>).
Qui supporremo che un utente non privilegiato non abbia diritto di scrittura nella directory <code>/usr/src</code> (come imho dovrebbe essere), quindi tutti i comandi successivi devono essere dati da root oppure usando un programma che vi dia pari diritti per queste azioni (per es. <code>sudo</code>).
<pre>
<pre>
# dpkg -i ~/work/linux-source-2.6.x-xx-xxx.deb
# dpkg -i ~/work/linux-source-2.6.x-xx-xxx.deb
</pre>
</pre>
questo installerà un archivio compresso contenente il kernel nella directory <tt>/usr/src/</tt>. Andiamo a scompattarlo e applichiamo la patch:
questo installerà un archivio compresso contenente il kernel nella directory <code>/usr/src/</code>. Andiamo a scompattarlo e applichiamo la patch:
<pre>
<pre>
# cd /usr/src
# cd /usr/src
Riga 149: Riga 149:
C'è chi sostiene che scompattare il file usbatm direttamente nel kernel sia assolutamente sbagliato, per il rischio di sovrascrivere qualcosa. Ma considerando che l'operazione ha senso solo per 3 versioni del kernel, e successivamente i file contenuti nel pacchetto sono stati inclusi nell'albero dei sorgenti esattamente nella stessa posizione in cui li abbiamo messi noi, penso che siano timori infondati, a patto di non sbagliare la versione del kernel ;-).
C'è chi sostiene che scompattare il file usbatm direttamente nel kernel sia assolutamente sbagliato, per il rischio di sovrascrivere qualcosa. Ma considerando che l'operazione ha senso solo per 3 versioni del kernel, e successivamente i file contenuti nel pacchetto sono stati inclusi nell'albero dei sorgenti esattamente nella stessa posizione in cui li abbiamo messi noi, penso che siano timori infondati, a patto di non sbagliare la versione del kernel ;-).


{{Box|Nota Bene:|mentre sperimentate con la compilazione del kernel <u>non usate mai</u> la directory <tt>/usr/src/linux</tt> che dovrebbe essere un link simbolico (<tt>man ln</tt>) ai sorgenti del kernel attualmente in uso. Se tutto il nostro procedimento funzionerà, alla fine cambierete il link in modo che punti ai sorgenti giusti. Per approfondimenti sull'argomento vedere il [[Debian_Kernel_Howto | debian kernel howto]]}}
{{Box|Nota Bene:|mentre sperimentate con la compilazione del kernel <u>non usate mai</u> la directory <code>/usr/src/linux</code> che dovrebbe essere un link simbolico (<code>man ln</code>) ai sorgenti del kernel attualmente in uso. Se tutto il nostro procedimento funzionerà, alla fine cambierete il link in modo che punti ai sorgenti giusti. Per approfondimenti sull'argomento vedere il [[Debian_Kernel_Howto | debian kernel howto]]}}


Invece di compilare un kernel da zero (impresa a dir poco titanica) conviene recuperare il config relativo al kernel che state usando, che dovrebbe essere presente nella directory <tt>/boot</tt>, e dovrebbe chiamarsi <tt>config-<versione del kernel></tt> o simili: sempre dalla directory principale dei sorgenti del kernel digitate
Invece di compilare un kernel da zero (impresa a dir poco titanica) conviene recuperare il config relativo al kernel che state usando, che dovrebbe essere presente nella directory <code>/boot</code>, e dovrebbe chiamarsi <code>config-<versione del kernel></code> o simili: sempre dalla directory principale dei sorgenti del kernel digitate
<pre>
<pre>
# cp /boot/config<qualcosa> .config
# cp /boot/config<qualcosa> .config
Riga 162: Riga 162:
</pre>
</pre>


Andate alla voce <tt>Device Drivers -> USB support -> USB DSL modem support</tt> ed attivate <tt>USB DSL modem support</tt> e <tt>Conexant AccessRunner USB support</tt>.
Andate alla voce <code>Device Drivers -> USB support -> USB DSL modem support</code> ed attivate <code>USB DSL modem support</code> e <code>Conexant AccessRunner USB support</code>.


{{Box|Nota:|il driver cxacru deve essere compilato come modulo perchè, probabilmente a causa di un bug, se compilato nel kernel in molti casi viene inizializzato prima che il firmware sia disponibile, e restituisce l'errore "<tt>firmware not found</tt>" anche se in realtà l'avete messo nel posto giusto. Il fatto è che non potendo fare "<tt>rmmod cxacru && modprobe cxacru</tt>", per farlo reinizializzare non vi resterebbe che staccare fisicamente il modem dalla porta usb e riattaccarlo, dopo ogni reboot, e questo può essere parecchio seccante!}}
{{Box|Nota:|il driver cxacru deve essere compilato come modulo perchè, probabilmente a causa di un bug, se compilato nel kernel in molti casi viene inizializzato prima che il firmware sia disponibile, e restituisce l'errore "<code>firmware not found</code>" anche se in realtà l'avete messo nel posto giusto. Il fatto è che non potendo fare "<code>rmmod cxacru && modprobe cxacru</code>", per farlo reinizializzare non vi resterebbe che staccare fisicamente il modem dalla porta usb e riattaccarlo, dopo ogni reboot, e questo può essere parecchio seccante!}}


Il resto della configurazione dovrebbe essere già a posto, ma controllate per sicurezza.
Il resto della configurazione dovrebbe essere già a posto, ma controllate per sicurezza.
Alla voce <tt>Device Drivers -> Networking support </tt>
Alla voce <code>Device Drivers -> Networking support </code>
<pre>
<pre>
<M> PPP support
<M> PPP support
Riga 177: Riga 177:
</pre>
</pre>


Ala voce <tt>Networking options</tt>
Ala voce <code>Networking options</code>
<pre>
<pre>
<M> Asyncronous Transfer Mode
<M> Asyncronous Transfer Mode
Riga 184: Riga 184:
</pre>
</pre>


A questo punto uscite salvando la configurazione attuale e costruite il pacchetto <tt>kernel-source-2.6.x-xx-xxx-Custom.deb</tt> (per approfondimenti vedere [[Debian_Kernel_Howto#Compilazione_del_kernel | Compilazione del kernel]] nel Debian kernel howto):
A questo punto uscite salvando la configurazione attuale e costruite il pacchetto <code>kernel-source-2.6.x-xx-xxx-Custom.deb</code> (per approfondimenti vedere [[Debian_Kernel_Howto#Compilazione_del_kernel | Compilazione del kernel]] nel Debian kernel howto):
<pre>
<pre>
# make-kpkg clean
# make-kpkg clean
Riga 201: Riga 201:


==Installazione del firmware==
==Installazione del firmware==
Qualunque metodo abbiate seguito, dopo il reboot dovreste trovare disponibile il modulo <tt>cxacru</tt>, verificate con
Qualunque metodo abbiate seguito, dopo il reboot dovreste trovare disponibile il modulo <code>cxacru</code>, verificate con
<pre>
<pre>
# modprobe -l |grep cxacru
# modprobe -l |grep cxacru
Riga 212: Riga 212:


Se tutto è andato per il meglio proseguiamo andando a recuperare il CD dei driver per w... ehm, quell'altro S.O.  
Se tutto è andato per il meglio proseguiamo andando a recuperare il CD dei driver per w... ehm, quell'altro S.O.  
Cercate nel CD il file <tt>CnxEtU.sys</tt> e copiatelo nella Cartella di lavoro. Ora estraete il firmware e copiatelo nella directory dove hotplug (o udev se usate un sistema più recente) si aspetta di trovarlo.
Cercate nel CD il file <code>CnxEtU.sys</code> e copiatelo nella Cartella di lavoro. Ora estraete il firmware e copiatelo nella directory dove hotplug (o udev se usate un sistema più recente) si aspetta di trovarlo.


{{Box|Nota:|per Sarge, che utilizza ancora hotplug, la directory standard per il firmware è <tt>/usr/lib/hotplug/firmware</tt>, mentre da Etch in poi hotplug è stato sostituito da udev, e la directory per il firmware è <tt>/lib/firmware</tt>.}}
{{Box|Nota:|per Sarge, che utilizza ancora hotplug, la directory standard per il firmware è <code>/usr/lib/hotplug/firmware</code>, mentre da Etch in poi hotplug è stato sostituito da udev, e la directory per il firmware è <code>/lib/firmware</code>.}}
Noi supporremo di essere su Sarge:
Noi supporremo di essere su Sarge:
<pre>
<pre>
Riga 221: Riga 221:
# cp ~/work/cxacru-fw.bin /usr/lib/hotplug/firmware
# cp ~/work/cxacru-fw.bin /usr/lib/hotplug/firmware
</pre>
</pre>
Se il vostro modem ha il chipset <tt>0xcafe</tt> copiate nella stessa directory anche la ROM di boot, cioè il file <tt>cxacru-bp.bin</tt>.
Se il vostro modem ha il chipset <code>0xcafe</code> copiate nella stessa directory anche la ROM di boot, cioè il file <code>cxacru-bp.bin</code>.


A questo punto togliete il modulo <tt>cxacru</tt>, nel caso sia caricato:
A questo punto togliete il modulo <code>cxacru</code>, nel caso sia caricato:
<pre>
<pre>
# rmmod cxacru
# rmmod cxacru
Riga 237: Riga 237:
cxacru 1-1:1.0: found firmware cxacru-fw.bin
cxacru 1-1:1.0: found firmware cxacru-fw.bin
</pre>
</pre>
Nel caso, una volta caricato il firmware, riceviate, sempre in <tt>dmesg</tt>, il messaggio:
Nel caso, una volta caricato il firmware, riceviate, sempre in <code>dmesg</code>, il messaggio:
<pre>
<pre>
cxacru 1-1:1.0: poll status: error -5
cxacru 1-1:1.0: poll status: error -5
</pre>
</pre>
significa che occorre una versione più recente del vostro firmware. In effetti non è assolutamente detto che i driver forniti dal produttore del modem siano aggiornati, ma potete senz'altro trovare un firmware aggiornato in rete, per esempio [http://ftp.linux.it/pub/People/md/warez/ qui] (notare che il pacchetto .deb è per Sarge, e mette il firmware in <tt>/usr/lib/hotplug/firmware</tt>, quindi per Etch è molto meglio non usarlo e scaricare direttamente il firmware) o eventualmente postando nel forum.  
significa che occorre una versione più recente del vostro firmware. In effetti non è assolutamente detto che i driver forniti dal produttore del modem siano aggiornati, ma potete senz'altro trovare un firmware aggiornato in rete, per esempio [http://ftp.linux.it/pub/People/md/warez/ qui] (notare che il pacchetto .deb è per Sarge, e mette il firmware in <code>/usr/lib/hotplug/firmware</code>, quindi per Etch è molto meglio non usarlo e scaricare direttamente il firmware) o eventualmente postando nel forum.  


Ora il driver del modem dovrebbe già essere in funzione e il led relativo alla linea ADSL dovrebbe lampeggiare, segno che sta cercando la sincronizzazione con la linea. Mentre il led lampeggia avrete che:
Ora il driver del modem dovrebbe già essere in funzione e il led relativo alla linea ADSL dovrebbe lampeggiare, segno che sta cercando la sincronizzazione con la linea. Mentre il led lampeggia avrete che:
Riga 277: Riga 277:
==Impostazione della connessione==  
==Impostazione della connessione==  
Prima di iniziare dovete sapere:
Prima di iniziare dovete sapere:
*userid e password forniti dal provider (di solito per Telecom Alice l'userid e la password sono entrambi uguali a <tt>aliceadsl</tt>)
*userid e password forniti dal provider (di solito per Telecom Alice l'userid e la password sono entrambi uguali a <code>aliceadsl</code>)
*VPI e VCI del provider (nel caso di Telecom Alice sono 8 e 35).
*VPI e VCI del provider (nel caso di Telecom Alice sono 8 e 35).
*IP e DNS del nostro provider nel caso di una connessione con IP statico.
*IP e DNS del nostro provider nel caso di una connessione con IP statico.


Iniziamo con la configurazione.
Iniziamo con la configurazione.
Copiate nella directory <tt>/etc/ppp/peers/</tt> il file <tt>/usr/share/doc/ppp/examples/peers-pppoa</tt>, che in Debian contiene la configurazione standard  
Copiate nella directory <code>/etc/ppp/peers/</code> il file <code>/usr/share/doc/ppp/examples/peers-pppoa</code>, che in Debian contiene la configurazione standard  
<pre>
<pre>
# cp /usr/share/doc/ppp/examples/peers-pppoa /etc/ppp/peers/adsl
# cp /usr/share/doc/ppp/examples/peers-pppoa /etc/ppp/peers/adsl
</pre>
</pre>
oppure create il file <tt>/etc/ppp/peers/adsl</tt> in questo modo:
oppure create il file <code>/etc/ppp/peers/adsl</code> in questo modo:
<pre>
<pre>
# echo "noauth
# echo "noauth
Riga 297: Riga 297:
" > /etc/ppp/peers/adsl
" > /etc/ppp/peers/adsl
</pre>
</pre>
In entrambi i casi modificate la riga <tt>user "userid"</tt> mettendo il vostro userid ;-), con o senza le virgolette: non ha importanza.
In entrambi i casi modificate la riga <code>user "userid"</code> mettendo il vostro userid ;-), con o senza le virgolette: non ha importanza.


Inserite userid e password nei file <tt>/etc/ppp/pap-secrets</tt> e <tt>/etc/ppp/chap-secrets</tt>:
Inserite userid e password nei file <code>/etc/ppp/pap-secrets</code> e <code>/etc/ppp/chap-secrets</code>:
<pre>
<pre>
# echo "userid  *  password" >> /etc/ppp/pap-secrets
# echo "userid  *  password" >> /etc/ppp/pap-secrets
Riga 305: Riga 305:
</pre>
</pre>


Controllate in <tt>/etc/resolv.conf</tt> se i DNS sono corretti altrimenti li dovrete inserire a mano. Per esempio un <tt>/etc/resolv.conf</tt> con i DNS di libero sarebbe:
Controllate in <code>/etc/resolv.conf</code> se i DNS sono corretti altrimenti li dovrete inserire a mano. Per esempio un <code>/etc/resolv.conf</code> con i DNS di libero sarebbe:
<pre>
<pre>
$ cat /etc/resolv.conf
$ cat /etc/resolv.conf
Riga 319: Riga 319:
ed il gioco è fatto.  
ed il gioco è fatto.  


Controllate in <tt>/var/log/messagges</tt> se tutto funziona regolarmente:
Controllate in <code>/var/log/messagges</code> se tutto funziona regolarmente:
<pre>
<pre>
# tail /var/log/messagges
# tail /var/log/messagges