Pagina 1 di 1
[RISOLTO]broadcom bcm43225
Inviato: sab 9 ott 2010, 10:47
da blackman85
Salve gente ho un problema con la wifi, la mia scheda di rete bcm43225 della broadcom non viene riconosciuta su slackware 13.1 kernel 2.6.33.4, ho cercato in rete ma non sono riuscito a reperire nessun driver. Avete qualche suggerimento da darmi?
Grazie a tutti per le risposte...
Re: broadcom bcm43225
Inviato: sab 9 ott 2010, 12:41
da Ansa89
Re: broadcom bcm43225
Inviato: sab 9 ott 2010, 19:48
da blackman85
Allora ho risolto il problema (un pò complicato ma alla fine ce l'ho fatta almeno spero visto che ho messo mano nel codice). Spiego il procedimento per tutti quelli che ne hanno bisogno visto che i driver per questa scheda non saranno presenti prima del kernel 2.6.37
Comunque procediamo per gradi allora la guida da seguire è
questa però con alcuni accorgimenti altrimenti non riuscite a compilare (almeno a me non compilava). Quindi riscrivo la guida:
1) Scaricare i driver con git (sono all'incirca 600 MB) attraverso i seguenti comandi:
Codice: Seleziona tutto
git clone git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git clone git://git.kernel.org/pub/scm/linux/kernel/git/dwmw2/linux-firmware.git
2) Aprite con un editor di testo qualsiasi (vim ad esempio) il file contenuto in una della directory appena scaricata precisamente
linux-next/drivers/staging/brcm80211/Makefile
Alla fine di questo file aggiungete le seguenti righe:
Codice: Seleziona tutto
KDIR := /lib/modules/$(shell uname -r)/build
ccflags-y += -I$(SUBDIRS)/include -I$(SUBDIRS)/sys -I$(SUBDIRS)/phy
default:
echo $(PWD)
$(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) CONFIG_BRCM80211_PCI=y V=1 modules
Salvate il file e chiudete l'editor di testo
3) Aprite con un editor di testo il file:
linux-next/drivers/staging/brcm80211/sys/wl_mac80211.c
Verso la riga 744 (o lì vicino adesso non ricordo bene) modificate il testo da così:
.sta_add = wl_sta_add,
.sta_remove = wl_sta_remove
a così:
//.sta_add = wl_sta_add,
//.sta_remove = wl_sta_remove
salvate e chiudete l'editor di testi
3) Loggatevi da amministratore e assicuratevi di essere nella directory "linux-net/drivers/staging/brcm80211/" e date il comando make e aspettate che finisca (dovrebbe finire il tutto senza errori)
4) Ora date il comando
5) Ora non rimane che copiare il firmware quindi andate nella seconda directory che avete scaricato e precisamente in "linux-firmware/brcm" e date i seguenti comandi da amministratore:
Codice: Seleziona tutto
mkdir /lib/firmware/brcm
cp bcm43xx* /lib/firmware/brcm
cd /lib/firmware/brcm
ln -s bcm43xx-0-610-809-0.fw bcm43xx-0.fw
ln -s bcm43xx_hdr-0-610-809-0.fw bcm43xx_hdr-0.fw
6) Abbiamo finito se tutta la procedura è stata eseguita corretamente possiamo testare il funzionamento dando il comando:
A questo punto lanciando il comando iwconfing vediamo apparire il device wlan0 che è appunto la vostra scheda di rete. Per il momento ho testato la scheda e funziona correttamente, ma comunque quello che abbiamo fatto è commentare righe di codice, e quindi non so se può comportare qualche problema in futuro, per il momento funziona! Comunque i più esperti portranno aiutarci...

Re: [RISOLTO]broadcom bcm43225
Inviato: dom 10 ott 2010, 11:06
da Ansa89
Ho creato una patch unica per fixare sia il "Makefile", sia il file "wl_mac80211.c".
Per applicarla bisogna spostarsi nella directory con i sorgenti e usare il comando "patch":
Codice: Seleziona tutto
$cd /path/to/linux-next
$patch -p1 -i /path/to/linux-next.patch
Spero di aver fatto cosa gradita

.
Re: [RISOLTO]broadcom bcm43225
Inviato: dom 10 ott 2010, 16:09
da blackman85
Ansa89 ha scritto:Ho creato una patch unica per fixare sia il "Makefile", sia il file "wl_mac80211.c".
Per applicarla bisogna spostarsi nella directory con i sorgenti e usare il comando "patch":
Codice: Seleziona tutto
$cd /path/to/linux-next
$patch -p1 -i /path/to/linux-next.patch
Spero di aver fatto cosa gradita

.

Però mi sorge un dubbio sto comunque rileggendo il codice e non riesco a capire a che cosa servano quelle proprietà visto che poi in compilazione mi dava un errore di variabile non inizializzata. Forse servono per qualche altra implementazione futura sulle suddete schede? Mah, comunque sto testando il wireless e va alla grande quindi commentando quelle due righe non si è preclusa nessuna funziona della scheda!
Re: [RISOLTO]broadcom bcm43225
Inviato: dom 10 ott 2010, 17:03
da Ansa89
Secondo me sono due variabili (o funzioni?) che servono per aggiungere un device fittizio (magari chiamato "station") a fianco del solito "wlan0".
Queste sono solo supposizioni e magari quelle variabili servono per tutt'altre cose

.
Re: [RISOLTO]broadcom bcm43225
Inviato: dom 10 ott 2010, 17:12
da phobos3576
Grazie mille blackman85!
Ho appena comprato un portatile HP Pavilion e, guarda caso, dentro c'è una scheda di rete Broadcom BCM 43225.
Mi stavo già rassegnando a dover aspettare il kernel 2.6.37.
Ti volevo chiedere: ma con il tuo procedimento la scheda viene autorilevata al boot o bisogna caricare manualmente il driver?
Una cosa che ho notato nel mio portatile è che Windows 7 mi segnala un'unica scheda di rete integrata Ethernet BCM 43225 che però funziona come scheda WiFi; presumo quindi che la scheda supporti sia Ethernet, sia WiFi?
Re: [RISOLTO]broadcom bcm43225
Inviato: lun 11 ott 2010, 10:41
da blackman85
phobos3576 ha scritto:Grazie mille blackman85!
Ho appena comprato un portatile HP Pavilion e, guarda caso, dentro c'è una scheda di rete Broadcom BCM 43225.
Mi stavo già rassegnando a dover aspettare il kernel 2.6.37.
Ti volevo chiedere: ma con il tuo procedimento la scheda viene autorilevata al boot o bisogna caricare manualmente il driver?
Facendo il procedimento che ho scritto a me funziona perfettamente e carica il device al boot.
Una cosa che ho notato nel mio portatile è che Windows 7 mi segnala un'unica scheda di rete integrata Ethernet BCM 43225 che però funziona come scheda WiFi; presumo quindi che la scheda supporti sia Ethernet, sia WiFi?
Non penso visto che ho anche io la stessa scheda ed è solo wifi. Penso che nel tuo portatile ci sia un altra scheda sempre della broadcom. Forse semplicemente non ti viene riconosciuta, visto che anche io ho una scheda ethernet "Broadcom Corporation NetLink BCM57780 Gigabit Ethernet PCIe (rev 01)" ed ho dovuto compilare a "mano" per far riconoscere il device eth0. Controlla con il comando lspci e posta...

Re: [RISOLTO]broadcom bcm43225
Inviato: lun 11 ott 2010, 18:34
da phobos3576
blackman85 ha scritto:Una cosa che ho notato nel mio portatile è che Windows 7 mi segnala un'unica scheda di rete integrata Ethernet BCM 43225 che però funziona come scheda WiFi; presumo quindi che la scheda supporti sia Ethernet, sia WiFi?
Non penso visto che ho anche io la stessa scheda ed è solo wifi. Penso che nel tuo portatile ci sia un altra scheda sempre della broadcom. Forse semplicemente non ti viene riconosciuta, visto che anche io ho una scheda ethernet "Broadcom Corporation NetLink BCM57780 Gigabit Ethernet PCIe (rev 01)" ed ho dovuto compilare a "mano" per far riconoscere il device eth0. Controlla con il comando lspci e posta...

Infatti, come indicato nel manuale del PC, è una Gigabit Ethernet.
E' Windows 7 che, nell'elenco delle periferiche di rete, mi dà solamente una Ethernet BCM43225.
Magari si tratta di un errore di Windows.
Comunque, Linux non l'ho ancora installato visto che ancora sto partizionando l'HD per fare posto.
Re: [RISOLTO]broadcom bcm43225
Inviato: mar 12 ott 2010, 0:02
da blackman85
Ok allora quando installerai la scheda wireless la puoi installare leggendo qui mentre penso che la scheda di rete venga riconosciuta automaticamente altrimenti posta l'output di lspci e risolveremo

Re: [RISOLTO]broadcom bcm43225
Inviato: mar 12 ott 2010, 23:21
da phobos3576
Blackman85, non ho ancora installato Linux sul portatile, però ti informo che sul fisso, con kernel 2.6.35, il make va a buon fine senza dover apportare alcuna modifica al file linux-next/drivers/staging/brcm80211/sys/wl_mac80211.c
Evidentemente, il tuo problema è legato al kernel 2.6.33.4 che (presumo) stai usando.
Re: [RISOLTO]broadcom bcm43225
Inviato: mer 13 ott 2010, 11:01
da blackman85
Si il mio kernel è 2.6.33.4

Re: [RISOLTO]broadcom bcm43225
Inviato: mer 13 ott 2010, 18:25
da phobos3576
Ho fatto un test con il LiveCD di Kubuntu 10.10 Maverick Meerkat e la scheda ethernet viene vista come Realtek L8*** Gigabyte Ethernet controller; inoltre, il kernel la supporta perfettamente e questo è già molto importante perché così posso scaricare direttamente sul portatile tutto il necessario per compilare il driver WiFi della Broadcom.
Windows7 fa un miscuglio tra ethernet e WiFi e mi segnala un'unica scheda Broadcom BCM43225 Ethernet controller.
Re: [RISOLTO]broadcom bcm43225
Inviato: sab 16 ott 2010, 15:36
da phobos3576
OK Blackman85. Ho installato il driver bcm80211 e tutto funziona alla perfezione.
A dire la verità ho dovuto riavviare un paio di volte, ma forse avevo sbagliato io qualche passaggio.
Addirittura, se sposto il portatile in un seminterrato di casa, il segnale wireless viene captato più forte dal driver Linux che non da quello Windows7.
L'unico dettaglio trascurabile è che la spia del wireless non si accende; provando ad attivarla manualmente si va incontro al rischio di qualche freeze (/var/log/messages dice qualcosa tipo "HPW unknown response").
Per il resto, nonostante il PC sia nuovissimo, mi è stato riconosciuto il 100% dell'hardware, compresa la webcam HP integrata e il lettore di memory card JMicron.
Re: [RISOLTO]broadcom bcm43225
Inviato: dom 17 ott 2010, 13:20
da blackman85
Per la spia ancora non ho avuto tempo di vedere, appena posso metto una pezza! Comunque se ci riesci prima tu posta!
Saluti....
Forever SLACKWARE!!!