Dopo svariati giorni di tentativi sono riuscito a far funzionare la sk wireless del mio portatile.
La sk è un Broadcom, driver bcm43xx, e nè con kubuntu nè con suse (64bit) mi funzionava.
Ora i driver per questa scheda esistono, però bisogna usare il netbc564.inf invece del classico bcmwl5.inf, almeno dello distro a 64bit.
La guida da cui ho preso la maggior parte della procedura è questa, dal ubuntu forum.
La ubuntu/kubuntu, dal kernel 2.6.17 dovrebbe già incorporare i driver per questa scheda, anche se a me dava un pò di problemi. La guida sopra è però molto esauriente, anche se in inglese.
Per la SuSE 10.1 64bit.
Io avevo il problema che la procedura sembrava andare a buon fine però non compariva mai l'interfaccia wlan0, e quindi non mi funzionava mai nulla.
Procedura:
1_ Innanzi tutto iniziamo a rimuovere tutte le schifezze installate con la distro. Dal gestore dei pacchetti di YAST2 scriviamo "ndiswrapper" e disinstalliamo tutto quello che eventualmente c'è già (tanto non funziona!!!)
2_ Scarichiamo dal sito di ndiswrapper l'ultima release stabile. e scompattiamo il pacchetto sul Desktop.
3_ Apriamo una cartella, entriamo in una console e portiamoci nella cartella di ndiswrapper.
4_ Prendiamo i diritti di root ("su" seguito da password) e lanciamo il comando:
$ make uninstall
$ rmmod bcm43xx
$ rmmod ndiswrapper
Per essere sicuri di pulire il sistema.
Il make uninstall lo potete mandare anche un paio di volte, male non fà. Dopo il primo tentativo potrebbero uscire diverse riche di codice, ignoratele e andate avanti.
$make
$make install.
questo per essere sicuri di avere l'ultima versione installata.
5_ Scarichiamo il pacchetto allegato, che contiene i driver per la versione 64bit. Scompattiamolo sul Desktop.
6_ Installiamo i driver. Sempre da consolle portiamoci sul desktop.
$cd /home/-username-/Desktop
$ndiswrapper -l
Questo elenca tutti i driver eventualmente già installati. Usiamo il comando
$ndiswrapper -e nomedriver
Per eliminare tutti i driver eventualmente già presenti. Si può eliminare un solo driver alla volta.
7_ Installiamo il nuovo driver:
$ndiswrapper -i /percorso completo/netbc564.inf
Dovrebbe seguire un output simile:
codice:
Installing netbc564
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
A questo punto è sufficiente lanciare il comando
$ modprobe ndiswrapper
$ iwconfig wlan0
Per vedere le informazioni relative alla vostra sk wireless, finalmente funzionante!!!
Ad ogni riavvio, però dovete lanciare il comando
$ modprobe ndiswrapper
per avviare la wireless. Se invece volete che la wireless sia caricata automaticamente ad ogni avvio, lanciate (sempre con i dirirtti di root) il seguente comando:
$ echo ndiswrapper >> /etc/modules
Serve perchè il modulo ndiswrapper sia caricato ad ogni boot del pc, rilevando l'hw e avviando l'interfaccia di rete. Dovrebbe essere la stessa cosa che prendere il modulo ndiswrapper.ko e copiarlo nella cartella /etc/modules ma non ne sono sicuro.
Anche il network manager ora funziona. E' sufficiente avviare YAST2 -> Dispositivi di rete -> Schede di rete -> Utente controllato con Network Manager -> Aggiungi e impostare una scheda di rete wireless, nome di configurazione 0 (zero) e modulo ndiswrapper, senza altri parametri.
[EDIT]
Oggi ho riformattato il sistema, per avere un installazione pulita. Questo mi ha dato un sacco di problemi, che onestamente non sò come giustificare. Ho provato la versione 1.22 di ndiswrapper (la guida è stata scritta con la 1.21) e per riuscire a caricare la wireless ho dovuto installare la versione di ndiswrapper che si trova sui repo. Insieme a quella mi ha installato anche un kernel smp... Non sò davvero cosa dire...
[Altro EDIT]
Dovrei aver risolto. Ho usato la versione 1.21 ma credo sia lo stesso anche con la 1.22
In pratica al punto n°7 è necessario specificare il percorso completo del driver, invece che il solo nome. Questo anche se ci si trova nella stessa cartella in cui il file si trova. Non sò perchè ma così ha funzionato.