# [RISOLTO]DWA-525 (Ralink) installare scheda pci wifi

## tornadomig

ciao a tutti! ho un bel quesito. sul mio pc fisso e' montata questa scheda che vorrei far funzionare. il driver e' stato gia' da me scaricato dal sito della Ralink ma ho sempre errori di compilazione. vorrei capire con voi dove sta l'inghippo. ho seguito il wiki per la RT2860 ma senza successo.

prima ho dato questo comando:

```
lspci -nnk

Network controller [0280]: RaLink Device [1814:3060]

        Subsystem: D-Link System Inc Device [1186:3c04]

        Kernel driver in use: rt2800pci
```

alla compilazione del kernel ho marcato * ai moduli dedicati alla scheda in questione ed esce questo dopo che provo a installare il driver preso dal sito Ralink:

```
DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217 # make

make -C tools

make[1]: Entering directory `/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/tools'

gcc -g bin2h.c -o bin2h

make[1]: Leaving directory `/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/tools'

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/tools/bin2h

cp -f os/linux/Makefile.6 /home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/Makefile

make -C /lib/modules/3.1.1-gentoo/build SUBDIRS=/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux modules

make[1]: Entering directory `/usr/src/linux-3.1.1-gentoo'

  CC [M]  /home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.o

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2983:2: error: unknown field ‘private’ specified in initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2983:2: warning: initialization from incompatible pointer type

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2984:2: error: unknown field ‘num_private’ specified in initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2984:2: warning: excess elements in struct initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2984:2: warning: (near initialization for ‘rt28xx_iw_handler_def’)

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2985:2: error: unknown field ‘private_args’ specified in initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2985:26: warning: excess elements in struct initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2985:26: warning: (near initialization for ‘rt28xx_iw_handler_def’)

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2986:2: error: unknown field ‘num_private_args’ specified in initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2986:2: warning: excess elements in struct initializer

/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.c:2986:2: warning: (near initialization for ‘rt28xx_iw_handler_def’)

make[2]: *** [/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux/../../os/linux/sta_ioctl.o] Errore 1

make[1]: *** [_module_/home/gentux/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217/os/linux] Errore 2

make[1]: Leaving directory `/usr/src/linux-3.1.1-gentoo'

make: *** [LINUX] Errore 2
```

ci sono consigli? grazie della pazienzaLast edited by tornadomig on Tue Jan 24, 2012 7:23 pm; edited 1 time in total

----------

## tornadomig

nessun consiglio? va beh...grazie lo stesso

----------

## Zizo

La tua scheda è basata su chip RaLink 3060.

 *Quote:*   

> Kernel driver in use: rt2800pci

 

Non funziona già? Non sembrerebbe, visto che ( kernel 2.6.38 ):

 *'cd /usr/src/linux && make menuconfig' -> premi '/' -> digita 'rt2800pci' wrote:*   

>  │ CONFIG_RT2800PCI_RT35XX:
> 
>   │ This adds support for rt35xx wireless chipset family to the
> 
>   │ rt2800pci driver.
> ...

 

Poco male, cerco con google: 

```
ralink unknown field ‘private’ specified in initializer
```

Scusa per il copia e incolla spudorato dai tuoi messaggi d'errore, è che scrivere "unknown field ‘private’ specified in initializer"era noioso... oh, guarda, i primi due risultati vengono proprio dal forum di gentoo!

Ora non ti resta che leggerli: contengono due soluzioni differenti al tuo problema, o almeno qualche utile consiglio lo dovresti trovare.

Di sicuro controllerei scrupolosamente "dmesg" e "/var/log/messages".

----------

## djinnZ

 *tornadomig wrote:*   

> nessun consiglio? va beh...grazie lo stesso

 sono pericolosamente vicino al diventare blu a furia di trattenere il fiato¹   :Twisted Evil: 

Al massimo scaricati il firmware, quello credo che serva, invece (nel caso creati un ebuild a partire da quelli per le rt 61 ed apri un bug per sottoporlo a quegli sfaticati dei devel, questa è la via gentoo, così agiscono le persone civili, questa è cosa buona e giusta ..., tanto per non essere il solito lamer etc.), ma non credo che ti serva il modulo esterno.

In generale mi sembrano i tipici errori di un modulo esterno creato per un kernel molto più vecchio o più recente di quello che usi.

C'è gente a questo mondo che deve ancora fare archeologia sulle versioni del kernel (stando a certi oni² dovrei usare ancora il kernel .18 , causa supporto threading dell'età della pietra nello shitware che mi spacciano per procedura contabile; ad esempio) quindi questo spiega il supporto esterno.

A naso, non ho verificato le specifichee non ho intenzione di applicarmi.

¹ trattasi di citazione, dall'autore italiano che ha avuto maggiore diffusione nel mondo, dopo collodi

² il termine non è riferito ai "demoni" della mitologia giapponese od agli indigeni di hokkaido ... ovviamente

----------

## tornadomig

@djiinz e @tutti i collaboratori del forum italiano: abbiate pazienza per la mia ignoranza, non vi ringraziero' mai abbastanza ma e' che proprio certe cose di drivers o il meccanismo di gentoo stesso fanno ancora fatica a entrarmi nella capa, tenuto conto che son solo tre-quattro settimane che mi sono imbattuto in questa fantastica distro. quindi se la soluzione non e' poi cosi' easy, non importa. su slackware questa l'ho fatta funzionare sia su current 32 che 64 stable insomma li' l'ho fatta funzionare  e quindi ritenevo a parer mio che la soluzione non fosse cosi' lontana dalla risoluzione. insomma ci proviamo tutti insieme ma non e' fondamentale riuscirci a tutti i costi. avro' toppato qualcosa sul kernel, che ne so...ho anche trovato a riguardo un post in un forum in lingua russa ma non ci ho capito granche', tanto per dire ho googlato...comunque il mio "grazie lo stesso" non vuole essere offensivo in alcuna maniera e spero di non aver creato nessun equivoco a riguardo. io dico sempre e diro' grazie in ogni caso sia per la pazienza che per il disturbo arrecato. e non vado oltre...comunque, caro djiinz, non sei obbligato ad applicartici.

----------

## Zizo

Rinunci pure? Non sei per nulla lontano dalla soluzione. Hai controllato i vari log in cerca di qualche riga inerente il wifi?

Comincia con

```
dmesg | less -I; less -I /var/log/messages
```

dove puoi effettuare delle ricerche nel testo premendo '/'.

----------

## djinnZ

continuo a domandarmi chi me lo fa fare...  :Crying or Very sad: 

 :Evil or Very Mad:  è una cosa (e comunque va letto cum grano salis)  :Twisted Evil:  è tutt'altro, anche se cattiva resta sempre una battuta.

Solita prece per la nostra civiltà italiana, per la nostra lingua, per la democrazia e soprattutto per il senso dell'umorismo, vittima straziata della civiltà moderna.

Non mi ci applico = non ho tempo per andare a verificarenon ho modo di verificareè una cosa troppo specifica per andare a vedere sul mio pcper scaricare il software in questione dovrei registrarmi e non lo faccio per una cosa che forse non mi servirà mai...

implicando un "fin qui posso arrivare" si legge come:avviso all'interessato a procedere autonomamente od attendere, sicuramente a lungo, improbabili tempi miglioriincitazione agli altri utenti che dovessero avere hardware simile ad intervenire

e continuo ad essere dell'idea che hanno incluso il supporto nel kernel ma non il firmware.

E che al momento mi astengo dall'andare oltre questi suggerimenti e verificare quello che intuisco.

Non perché sono adirato (non rispondo od uso il tag flame e chiedo che chiudano il thread) ma perché non posso sempre rispondere solo ioè troppo complicato verificaresono fuori sede

necare pater sui non est peccatum...  :Twisted Evil: 

----------

## tornadomig

ho risolto il mio problema da solo aggiornando il kernel versione 3.2.1

ho verificato in esso i Ralink drivers marcando * ove necessario (RT3060) per la mia scheda pci. il firmware lo avevo già messo in precedenza.

morale: wicd vede la rete e si connette quindi adesso funziona. meno male e son contento! ringrazio per i consigli comunque.

anzi, ho da precisare una cosa che mi ero dimenticato di fare per il corretto funzionamento. ve la dico ora:

quindi ricapitolando, da root si dà il comando emerge gentoo-sources e installate il kernel 3.2.1-gentoo (funziona anche con 3.2.1-gentoo-r2)

poi:

```
eselect kernel list
```

 e linkate il kernel appena installato così

```
eselect kernel set (e mettete il numero del kernel a cu corrisponde, sarà 2 o 3, dipende da quanti ne avete installati), morale diventa eselect kernel set 2 (nel mio caso)
```

io non uso genkernel quindi:

```
cd /usr/src/linux
```

```
make menuconfig
```

 e paff! vi appare la schermata della configurazione del kernel. il percorso per arrivare al driver è il seguente:

Device drivers > Network device support > Wireless LAN > Ralink driver support (mettete già qui * con la barra spaziatrice per selezionarlo) >

```
<*>   Ralink rt27xx/rt28xx/rt30xx (PCI/PCIe/PCMCIA) support         │ │   

  │ │    [ ]     rt2800pci - Include support for rt33xx devices              │ │   

  │ │    [*]     rt2800pci - Include support for rt35xx devices (EXPERIMENTAL│ │   

  │ │    [ ]     rt2800pci - Include support for rt53xx devices (EXPERIMENTAL│
```

fate poi la vostra configurazione del kernel con quello che vi serve e salvate tutto. poi date exit per uscire

date ora:

```
make -j (mettete dopo -j un numero come avete nel vostro file /etc/make.conf la variabile OPTS, io ho un pc quad core quindi ho digitato make -j5) && modules_install
```

poi, sempre senza uscire dalla directory linux dove siete ora date:

```
cp arch/x86_64/boot/bzImage /boot/kernel-3.2.1-gentoo-r2 (ora ho questo kernel)

cp .config /boot/config-3.2.1-gentoo-r2

cp System.map /boot/System-3.2.1-gentoo-r2.map
```

andate poi a modificare grub con nano:

```
nano /boot/grub/grub.conf
```

se avete i driver Nvidia proprietari (io uso solo quelli) come me, non dimenticatevi di dare il comando

```
module-rebuild rebuild
```

altrimenti al reboot non si avvia X ( io dò sempre startx a ogni riavvio)

sempre per i driver Nvidia proprietari , io ho aggiunto al file /etc/conf.d/modules la dicitura

```
# You should consult your kernel documentation and configuration

# for a list of modules and their options.

modules_3_2_1="nvidia"
```

non è finito!

andate all'indirizzo riportato:

http://www.ralinktech.com/en/04_support/support.php?sn=501

scaricate questo file

RT3062PCI/mPCI/CB/PCIe(RT3060/RT3062/RT3562/RT3592)

io l'ho messo nella mia /home/utente e lo scompattate, 

poi

cd /home/utente/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217

nano os/linux/config.mk

modificate il file così:

 # Support Wpa_Supplicant

 HAS_WPA_SUPPLICANT=y

# Support Native WpaSupplicant for Network Manager

 HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y

salvate e chiudete il file. io uso wicd ma è lo stesso, funziona anche con network manager.

bisogna farlo perché se no, wicd con wpa_supplicant non vede le reti col comando iwlist scan.

non seve fare il make && make install, vi darà sempre errore.

nel mio caso è sufficiente ritornare all'indirizzo di prima, scaricare il firmware, che è questo

```
Firmware RT28XX/RT30XX PCI/mPCI/PCIe/CardBus series

(RT2760/RT2790/RT2860/RT2890/RT3060/RT3062

/RT3562/RT2860/RT2760/RT2890/RT2790/RT3090)
```

nella /home/utente, scompattarlo e copiarlo, quindi

```
cd /home/utente

cp file /lib/firmware
```

il file è questo:

rt2860.bin

per me c'è tutto quel che serve per far funzionare la scheda pci. wicd vede le reti, setto wlan1 o 0, mi disconnetto dalla rete cablata e sono a posto.

n.b. seguite poi sempre il wiki di wicd

benché niubbo mi piace imparare a poco a poco il mondo di gentoo e ho voluto fare questa mini-guida per spiegare meglio le fasi e l'occorrente necessario. nel mio caso funziona ma son sempre aperto a migliorie o correzioni.

grazie e scusateLast edited by tornadomig on Sun Jan 29, 2012 1:58 pm; edited 1 time in total

----------

## k01

 *tornadomig wrote:*   

> ( io dò sempre startx a ogni riavvio)
> 
> sempre per i driver Nvidia proprietari , io ho aggiunto al file /etc/conf.d/modules la dicitura
> 
> ```
> ...

 

e perchè mai??   :Confused:  è così comodo /etc/init.d/xdm   :Smile:  comunque non dovrebbe essere necessario specificare il caricamento del modulo nvidia, lo carica automaticamente da solo.

 *tornadomig wrote:*   

> cd /home/utente/DPO_RT3562_3592_3062_LinuxSTA_V2.4.1.1_20101217
> 
> nano os/linux/config.mk
> 
> modificate il file così:
> ...

 

quest'ultima parte è un po' confusionaria secondo me   :Razz:  che ne fai poi del file modificato? e quando dici di copiare il firmware mi sa che hai dimenticato un pezzo del comando, perchè cp ha bisogno di 2 argomenti almeno   :Wink: 

----------

## tornadomig

ciao!

ti rispondo da Fnac  :Cool: 

grazie delle precisazioni, per ora ti dico non mi interessa xdm. faccio sempre gli aggiornamenti con portage in modalità testuale per maggior rapidità. tutto qui e poi è per impratichirmi.

il resto semmai lo correggo dopo. ammetto che ero un po' di fretta   :Wink: 

----------

