View Full Version : Scheda USB wifi TL-WN722N su Debian: missione impossibile?
fbcyborg
24-12-2010, 11:08
Salve a tutti,
ho installato con successo la scheda USB wireless in oggetto su Gentoo Linux, semplicemente compilando i driver nel kernel, che sono elencati qui (http://en.gentoo-wiki.com/wiki/TL-WN722N). Avrei voluto fare lo stesso con Debian, ma siccome il PC in questione è molto vecchio vorrei evitare di ricompilarci il kernel sopra, magari con esito negativo.
Il problema è che su lenny il kernel più recente che ottengo (usando backports) è il 2.6.32.5 e su questo kernel manca qualche modulo per far funzionare questa scheda wireless.
Ho trovato questo howto (http://www.alfredomaesa.net/2010/03/29/released-ath9k_htc-driver-rilasciato-il-driver-linux-ath9k_htc-per-atheros-usb-ar9271.php), che sinceramente mi aveva fatto ben sperare, ma purtroppo dopo qualche minuto di compilazione va in errore. Suppongo a causa di una versione dei driver non compatibile con il kernel installato (provo a scaricare quella per il 2.6.32 da qui (http://www.linuxwireless.org/en/users/Download/stable/), ma non è più disponibile).
Ho pensato anche di installare il kernel 2.6.37 che sta in experimental ma sinceramente non rischio, perché mi tira dietro un sacco di altri pacchetti.
Qualcuno saprebbe aiutarmi?
Gimli[2BV!2B]
24-12-2010, 12:51
Non ho trovato traccia di quei driver stable, tra i quali erano presenti anche versioni molto vicine al 2.6.32.5: ChangeLog-2.6.32-rc4-wireless 13-Oct-2009 18:18 578K
ChangeLog-2.6.32-rc5-wireless 22-Oct-2009 06:52 591K
ChangeLog-2.6.32-rc6-wireless 07-Nov-2009 01:17 615K
ChangeLog-2.6.32-rc7-wireless 12-Nov-2009 20:44 622K
ChangeLog-2.6.32-wireless 14-Dec-2009 12:38 637K
ChangeLog-2.6.32.2-wireless 19-Dec-2009 03:15 652K
ChangeLog-2.6.32.3-wireless 12-Jan-2010 20:10 685K
ChangeLog-2.6.32.8-wireless 12-Feb-2010 20:34 706K
ChangeLog-2.6.32.11-wireless 13-Apr-2010 01:26 738K
ChangeLog-2.6.32.15-wireless 01-Jun-2010 21:17 762K
ChangeLog-2.6.32.16-wireless 08-Jul-2010 21:12 773K
compat-wireless-2.6.32-rc1.tar.bz2 02-Oct-2009 19:42 1.9M
compat-wireless-2.6.32-rc4.tar.bz2 13-Oct-2009 18:32 1.9M
compat-wireless-2.6.32-rc5.tar.bz2 22-Oct-2009 06:48 1.9M
compat-wireless-2.6.32-rc6.tar.bz2 07-Nov-2009 01:04 1.9M
compat-wireless-2.6.32-rc7.tar.bz2 12-Nov-2009 20:40 1.9M
compat-wireless-2.6.32.2.tar.bz2 19-Dec-2009 03:12 2.1M
compat-wireless-2.6.32.3.tar.bz2 13-Jan-2010 11:27 1.9M
compat-wireless-2.6.32.8.tar.bz2 12-Feb-2010 20:31 1.9M
compat-wireless-2.6.32.11.tar.bz2 13-Apr-2010 01:25 1.9M
compat-wireless-2.6.32.15.tar.bz2 01-Jun-2010 21:16 2.4M
compat-wireless-2.6.32.16.tar.bz2 08-Jul-2010 21:09 1.9M
compat-wireless-2.6.32.tar.bz2 14-Dec-2009 12:36 1.9MAl momento sono disponibili solo questi (http://wireless.kernel.org/download/compat-wireless-2.6/) snapshot quotidiani riferiti al ramo linux-next (http://www.linuxwireless.org/en/users/Download/#Where_to_download_bleeding_edge) (il compat-wireless-2.6.tar.bz2 è il link all'ultimo, ed è quello della guida di cui hai messo il collegamento).
Questi non sono per niente adatti alla tua situazione.
Tutti i rami, tranne experimental, sono congelati al kernel 2.6.32.
Non riesco a trovare una soluzione che soddisfi le tue necessità.
Possibili scappatoie riguardo la compilazione del kernel su di una macchina di appoggio più potente:
il top sarebbe avere una macchina Debian equivalente, anche in macchina virtuale, in cui compilare il kernel alla Debian, ottenendo dei comodi deb
distcc (http://code.google.com/p/distcc/), assicurandosi che le macchine coinvolte abbiano attiva la stessa versione di gcc
credo potrebbe anche andare una compilazione standard su di un'altra macchina, con finale trasferimento della cartella dei sorgenti e solo make install ; make modules_install su quella meno potente
P.S. hai scritto molto vecchio, che CPU di preciso?
fbcyborg
24-12-2010, 13:13
Ciao,
grazie per l'intervento.
Avevo pensato anche io a far compilare ad un altro PC il kernel. Solo che al momento ho una macchina virtuale a 64bit, mentre sul notebook ho un OS a 32 bit.
Il processore del notebook è un Duron 700, e purtroppo con l'infinità di moduli che il kernel debian compila, ci vuole una giornata! :D
Stavo smanettando con quei file compat-wireless, ma ancora senza successo.
L'ultimo tentativo l'ho fatto seguendo questo (http://forum.ubuntu-it.org/index.php/topic,380131.msg3084096.html#msg3084096) howto.
Questa volta sono riuscito a compilare i driver e ad installarli nel kernel, infatti ora modprobe -l|grep ath mi restituisce:
/lib/modules/2.6.32-bpo.5-amd64/updates/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
/lib/modules/2.6.32-bpo.5-amd64/updates/drivers/net/wireless/ath/ath9k/ath9k_common.ko
/lib/modules/2.6.32-bpo.5-amd64/updates/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
/lib/modules/2.6.32-bpo.5-amd64/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko
/lib/modules/2.6.32-bpo.5-amd64/updates/drivers/net/wireless/ath/ath.ko
/lib/modules/2.6.32-bpo.5-amd64/updates/drivers/net/wireless/ath/ath9k/ath9k.ko
/lib/modules/2.6.32-bpo.5-amd64/kernel/drivers/net/wireless/ath/ar9170/ar9170usb.ko
Quindi i driver ci sono e riesco a caricarli, infatti:
# lsmod | grep ath
ath9k_htc 38914 0
mac80211 169795 1 ath9k_htc
ath9k_common 1661 1 ath9k_htc
ath9k_hw 251237 2 ath9k_htc,ath9k_common
ath 12973 2 ath9k_htc,ath9k_hw
cfg80211 120272 3 ath9k_htc,mac80211,ath
compat 5041 3 ath9k_htc,mac80211,cfg80211
compat_firmware_class 5455 1 ath9k_htc
led_class 2433 2 ath9k_htc,compat
usbcore 121842 5 ath9k_htc,compat,ehci_hcd,ohci_hcd
Ora il problema è che quando collego l'antenna, vedo questo errore:
Dec 24 14:05:19 debian kernel: [ 83.809724] usb 2-1: New USB device found, idVendor=0cf3, idProduct=9271
Dec 24 14:05:19 debian kernel: [ 83.809727] usb 2-1: New USB device strings: Mfr=16, Product=32, SerialNumber=48
Dec 24 14:05:19 debian kernel: [ 83.809730] usb 2-1: Product: USB2.0 WLAN
Dec 24 14:05:19 debian kernel: [ 83.809731] usb 2-1: Manufacturer: ATHEROS
Dec 24 14:05:19 debian kernel: [ 83.809733] usb 2-1: SerialNumber: 12345
Dec 24 14:05:19 debian kernel: [ 83.811108] usb 2-1: configuration #1 chosen from 1 choice
Dec 24 14:05:19 debian kernel: [ 84.043511] Compat-wireless backport release: compat-wireless-2010-12-20-1-g53f8e22
Dec 24 14:05:19 debian kernel: [ 84.043514] Backport based on linux-next.git next-20101221
Dec 24 14:05:19 debian kernel: [ 84.159313] cfg80211: Calling CRDA to update world regulatory domain
Dec 24 14:05:20 debian kernel: [ 85.243955] usb 2-1: ath9k_htc: Transferred FW: ar9271.fw, size: 49280
Dec 24 14:05:21 debian kernel: [ 86.250673] ath9k_hif_usb: probe of 2-1:1.0 failed with error -22
Dec 24 14:05:21 debian kernel: [ 86.250771] usbcore: registered new interface driver ath9k_hif_usb
Quindi a questo punto non saprei...
fbcyborg
24-12-2010, 13:56
Lasciatemelo dire: Debian è una distribuzione assurda! :muro:
Ho installato il kernel 2.6.37-rc5, che include tutti i driver necessari a far funzionare la mia scheda wireless e indovinate un po? Sempre l'errore di prima. Non capisco come questo possa accadere. È semplicemente assurdo. A questo punto ci rinuncio.
Gimli[2BV!2B]
24-12-2010, 14:19
L'errore che riporti sembra abbastanza diffuso. (http://www.google.it/search?hl=it&q=%22ath9k_hif_usb%22++%22failed+with+error+-22%22)
È anche riportato in questa recente patch. (https://patchwork.kernel.org/patch/294522/) Le risposte sono un po' strane e discordanti, ma puoi provare a modificare le due righe indicate.
Il 2.6.37-rc5 l'hai trovato pacchettizzato o l'hai compilato tu?
Direi che è normale che si presenti in entrambi i casi, si tratta praticamente dello stesso codice.
fbcyborg
24-12-2010, 18:03
Ciao,
il 2.6.37 l'ho trovato pacchettizzato. Ho impostato temporaneamente i repository experimental.
Certo è che se il codice è lo stesso, sì è normale che accada. Ma allora è un problema di patch di Debian, perché se su Gentoo non ho questo problema non capisco perché su Debian debba succedere.
Quei risultati su Google li avevo già visti. C'ho passato qualche ora a spulciarmeli. Avevo trovato anche quell'altra pagina che mi hai segnalato, ma sono sincero, non mi ci sono messo molto, perché pensavo di perdere del tempo per poi non riuscire a fare una cosa.
A questo punto proverò a scaricare i sorgenti, patcharli e ricompilare.
Grazie ancora per il suggerimento.
fbcyborg
25-12-2010, 17:39
Maledizione... odio Debian.
Ho applicato quella patch per il kernel, e dopo più di 6 ore di compilazione su una macchina vecchia (sì lo so è una pazzia, ma era l'unica cosa che potessi fare ora), si è verificato un errore.
IHEX2FW firmware/keyspan_pda/keyspan_pda.fw
IHEX2FW firmware/keyspan_pda/xircom_pgs.fw
make[1]: Leaving directory `/usr/src/linux-source-2.6.37-rc5'
/usr/bin/make ARCH=i386 \
-C Documentation/lguest
make[1]: Entering directory `/usr/src/linux-source-2.6.37-rc5/Documentation/lguest'
cc -m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -U_FORTIFY_SOURCE lguest.c -o lguest
lguest.c:21:25: error: sys/eventfd.h: No such file or directory
lguest.c:46:30: error: linux/virtio_rng.h: No such file or directory
lguest.c: In function ‘wait_for_vq_desc’:
lguest.c:715: error: ‘VRING_DESC_F_INDIRECT’ undeclared (first use in this function)
lguest.c:715: error: (Each undeclared identifier is reported only once
lguest.c:715: error: for each function it appears in.)
lguest.c: In function ‘create_thread’:
lguest.c:1026: warning: implicit declaration of function ‘eventfd’
lguest.c: In function ‘get_tun_device’:
lguest.c:1481: error: ‘IFF_VNET_HDR’ undeclared (first use in this function)
lguest.c:1486: error: ‘TUNSETOFFLOAD’ undeclared (first use in this function)
lguest.c:1487: error: ‘TUN_F_CSUM’ undeclared (first use in this function)
lguest.c:1487: error: ‘TUN_F_TSO4’ undeclared (first use in this function)
lguest.c:1487: error: ‘TUN_F_TSO6’ undeclared (first use in this function)
lguest.c:1487: error: ‘TUN_F_TSO_ECN’ undeclared (first use in this function)
lguest.c: In function ‘setup_tun_net’:
lguest.c:1568: error: ‘VIRTIO_RING_F_INDIRECT_DESC’ undeclared (first use in this function)
lguest.c: In function ‘blk_request’:
lguest.c:1677: error: ‘VIRTIO_BLK_T_FLUSH’ undeclared (first use in this function)
lguest.c: In function ‘setup_block_file’:
lguest.c:1729: error: ‘VIRTIO_BLK_F_FLUSH’ undeclared (first use in this function)
lguest.c: In function ‘setup_rng’:
lguest.c:1800: error: ‘VIRTIO_ID_RNG’ undeclared (first use in this function)
make[1]: *** [lguest] Error 1
make[1]: Leaving directory `/usr/src/linux-source-2.6.37-rc5/Documentation/lguest'
make: *** [debian/stamp/build/kernel] Error 2
A questo punto non so proprio più che fare.
Ma che razza di patch applicano ai kernel debian?
Gimli[2BV!2B]
25-12-2010, 18:06
Non è una questione di patch, il fatto è che il sistema stable è discretamente più vecchio di quel kernel ed è possibile incontrare questi errori.
L'header mancante (/usr/include/sys/eventfd.h) è contenuto nel pacchetto (http://packages.debian.org/sid/i386/libc6-dev/filelist) libc6-dev
Nella versione stable però non esisteva ancora (http://packages.debian.org/lenny/i386/libc6-dev/filelist).
Ho rintracciato questa possibile soluzione all'errore:Below “Virtualization” unselect “Linux hypervisor example code” or if
you need lguest you can also fix the compilation error by removing
“#include <sys /eventfd.h>” (line 21) from lguest.c.
fbcyborg
25-12-2010, 23:58
Che strano però. Eppure il pacchetto libc6-dev era già installato.
Provo a fare la modifica che hai trovato.
Vediamo un po' se funziona... ci vuole una giornata a compilare, però, se questa è la soluzione, non vedo alternativa.
fbcyborg
26-12-2010, 11:48
Ho provato a ricompilare in macchina virtuale:
CC [M] fs/xfs/support/uuid.o
LD [M] fs/xfs/xfs.o
make[1]: Leaving directory `/usr/src/linux-source-2.6.37-rc5'
make: *** [debian/stamp/build/kernel] Error 2
Ora si blocca qui.
Fino a quel punto non ha dato errori di alcun tipo prima di bloccarsi. :muro:
Comincio a pensare che qualcuno stia cospirando ai miei danni! :fagiano:
Che razza di distro... Mi sa che faccio prima a cambiare distribuzione.
EDIT: ecco.. durante una ricompilazione sono riuscito a scovare qualche errore:
make[5]: *** [drivers/gpu/drm/savage/savage_drv.o] Error 1
make[5]: *** [drivers/gpu/drm/savage] Error 2
make[5]: *** [drivers/gpu/drm] Error 2
make[5]: *** [drivers/gpu] Error 2
make[5]: *** [drivers] Error 2
make[1]: *** Waiting for unfinished jobs....
Vediamo se non selezionando quel modulo si risolve il problema, anche se dubito fortemente.
Gimli[2BV!2B]
26-12-2010, 13:04
Sì, ti posso dire tranquillamente che Debian stable è assolutamente fuori luogo se si ha a che fare con hardware recente o particolare come la tua chiavetta.
Potresti valutare di passare alla testing, che è destinata alla promozione a stable in tempi... boh, quando sarà pronta (il conto dei bug da chiudere è ormai sceso attorno alla settantina (http://blog.schmehl.info/Debian/rc-stats/2010-51) trascurando i patchati).
Dovrebbe essere un processo quasi indolore (il processo di aggiornamento è testato con cura) e dovrebbe permetterti di installare il kernel experimental o di riuscire a compilare un kernel recente.
fbcyborg
26-12-2010, 13:29
Niente, ci rinuncio, ancora un errore in compilazione in macchina virtuale (il duron 700 ancora compila, ma non lo stoppo.. magari riesce a finire).
Io passerei anche a testing, il problema è che se non si compila un kernel 2.6.37 (che è in experimental) non penso che si risolva il problema passando a testing.
A questo punto, mi sa che se non riuscirò a finire la compilazione nemmeno sul duron 700, andrò di cavetto ethernet. Ripeto: debian è una distribuzione assurda, sotto questo punto di vista. Su gentoo, ci ho messo 5 minuti esatti per farla funzionare. Qui sono 2 giorni che compilo, e non risolvo nulla. È qualcosa di inconcepibile.
fbcyborg
26-12-2010, 18:41
;34013510']Ho rintracciato questa possibile soluzione all'errore:Below “Virtualization” unselect “Linux hypervisor example code” or if
you need lguest you can also fix the compilation error by removing
“#include <sys /eventfd.h>” (line 21) from lguest.c.
Niente. :( Purtroppo questa soluzione non ha risolto il problema.
Abbandono.
fbcyborg
27-12-2010, 17:34
Ho aggiornato kernel-package alla versione fornita con squeeze, sono riuscito a compilare il kernel.
Ma ovviamente la mia pazienza non è stata premiata.
Kernel panic quasi immediato, al boot con il nuovo kernel.
Che amarezza.
Riprovo a ricompilare senza modificare nulla, ma a questo punto ho perso veramente ogni speranza con questa distribuzione.
Gimli[2BV!2B]
27-12-2010, 19:10
L'hai fatto l'initrd? Se non hai integrato i driver necessari devi farlo. Io senz'altro l'ho trascurato nei comandi di esempio perché lo elimino sempre.fakeroot make-kpkg --initrd --append-to-version -nomepersonalizzato --revision=1 kernel_image
Debian Kernel Howto (http://guide.debianizzati.org/index.php/Debian_Kernel_Howto)
fbcyborg
27-12-2010, 21:01
Ciao :)
Sono su quell'howto, da molto tempo oramai! :)
La riga di comando che ho sempre dato è la seguente:
CONCURRENCY_LEVEL=5 fakeroot make-kpkg --initrd kernel_image
Ho sempre questo problema dell'eventfd.
Dovrei rifare le modifiche.. ma sinceramente non so più che fare.
fbcyborg
06-01-2011, 20:32
;34007792']L'errore che riporti sembra abbastanza diffuso. (http://www.google.it/search?hl=it&q=%22ath9k_hif_usb%22++%22failed+with+error+-22%22)
È anche riportato in questa recente patch. (https://patchwork.kernel.org/patch/294522/) Le risposte sono un po' strane e discordanti, ma puoi provare a modificare le due righe indicate
Secondo me questa patch è un pacco.
Da notare che sul mio kernel gentoo, quella patch non viene applicata e il probe failure non accade. Ho provato anche a ricompilare un kernel vanilla. sinceramente non ci sto capendo più nulla e non capisco perché ciò debba accadere. Possibile che sia un problema dovuto allo strumento (make-kpkg) che si usa per compilare il kernel?
fenice1956
17-03-2011, 17:06
Salve il problema lo dava anche a me con Linux Mint Julia Lmde:
ho risolto seguendo queste istruzioni.
http://forum.ubuntu-it.org/index.php/topic,414373.msg3242915.html#msg3242915
:)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.