2010/3/1 Javier Argentina <javier.debian.bb...@gmail.com> > Estimados: > > La red inalámbrica me está volviendo L-O-C-O. > He leído cuanto tutorial se imaginen, habiendo fracasado con todo éxito. > No puedo hacer que funcione, y me huelo un problema de controlador. > Por lo que pido ayuda para ver cómo se las apañaron. > > A continuación iré desmembrando mis cuitas: > > Mi rama y distro. > # uname -a > Linux jap 2.6.30-1-amd64 #1 SMP Sat Aug 15 18:09:19 UTC 2009 x86_64 > GNU/Linux > > Mis interfaces de red. La segunda es la mala de la película. > # lspci > 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. > RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02) > 04:02.0 Network controller: RaLink RT2561/RT61 802.11g PCI > > Los controladores cargados son los que siguen: > # lsmod | grep rt > rt61pci 21124 0 > crc_itu_t 2720 2 firewire_core,rt61pci > rt2x00pci 8672 1 rt61pci > rt2x00lib 30384 2 rt61pci,rt2x00pci > led_class 5048 1 rt2x00lib > input_polldev 4544 1 rt2x00lib > mac80211 161328 2 rt2x00pci,rt2x00lib > cfg80211 65448 2 rt2x00lib,mac80211 > parport_pc 27080 1 > eeprom_93cx6 2544 1 rt61pci > parport 38224 3 ppdev,lp,parport_pc > > Las interfaces de red. eth0 es física en el segmento 10.0.0.0 > # ifconfig -a > eth0 Link encap:Ethernet HWaddr 00:19:66:db:5e:05 > inet addr:10.115.1.36 Bcast:10.115.1.255 Mask:255.255.255.0 > inet6 addr: fe80::219:66ff:fedb:5e05/64 Scope:Link > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:6596 errors:0 dropped:0 overruns:0 frame:0 > TX packets:3284 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:2018491 (1.9 MiB) TX bytes:633399 (618.5 KiB) > Interrupt:27 Base address:0xe000 > > wlan0 Link encap:Ethernet HWaddr 00:fd:07:96:13:14 > BROADCAST MULTICAST MTU:1500 Metric:1 > RX packets:0 errors:0 dropped:0 overruns:0 frame:0 > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) > > La detección de la placa wireless en sí. > # iwconfig > lo no wireless extensions. > > eth0 no wireless extensions. > > wmaster0 no wireless extensions. > > wlan0 IEEE 802.11bg ESSID:"" > Mode:Managed Frequency:2.412 GHz Access Point: Not-Associated > Tx-Power=0 dBm > Retry min limit:7 RTS thr:off Fragment thr:off > Encryption key:off > Power Management:off > Link Quality:0 Signal level:0 Noise level:0 > Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 > Tx excessive retries:0 Invalid misc:0 Missed beacon:0 > > vboxnet0 no wireless extensions. > > > ¿Por qué no detectar redes, si en güindos lo hace? > # iwlist wlan0 scan > wlan0 Interface doesn't support scanning : Network is down > > Prueba a levantar la interfaz :
ifconfig wlan0 up && iwlist wlan0 scan > ############################################################### > > Intentando complira el driver que provee RaLink. > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module# ./Configure > > > -------------------- Ralink RT61 Station Configuration -------------------- > > Linux kernel source directory : /usr/src/linux-2.6.30-1-amd64 > > Module install directory : /lib/modules/2.6.30-1-amd64/kernel/drivers/net > > > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module# make all > make -C /lib/modules/2.6.30-1-amd64/build > SUBDIRS=/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module modules > make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.30-1-amd64' > /usr/src/linux-headers-2.6.30-1-common/scripts/Makefile.build:49: *** > CFLAGS was changed in > "/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/Makefile". Fix it to use > EXTRA_CFLAGS. Alto. > make[3]: *** [_module_/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module] > Error 2 > make[2]: *** [sub-make] Error 2 > make[1]: *** [all] Error 2 > make[1]: se sale del directorio `/usr/src/linux-headers-2.6.30-1-amd64' > make: *** [all] Error 2 > > Corrijo el error, modifico la variable CFLAGS por EXTRA_CFLAGS > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module# make all > make -C /lib/modules/2.6.30-1-amd64/build > SUBDIRS=/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module modules > make[1]: se ingresa al directorio > `/usr/src/linux-headers-2.6.30-1-amd64' > CC [M] > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.o > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_get_drvinfo’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:78: error: > ‘struct net_device’ has no member named > ‘priv’ > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:78: warning: > unused variable ‘pAd’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_get_regs_len’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:97: warning: > no return statement in function returning > non-void > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_get_regs’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:103: error: > ‘struct net_device’ has no member named > ‘priv’ > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:104: warning: > unused variable ‘counter’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:103: warning: > unused variable ‘pAd’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_ethtool_get_link’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:120: warning: > unused variable ‘pAd’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:130: warning: > no return statement in function returning > non-void > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_get_eeprom_len’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:139: warning: > no return statement in function returning > non-void > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘rt61_get_eeprom’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:145: error: > ‘struct net_device’ has no member named > ‘priv’ > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:146: warning: > unused variable ‘counter’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:145: warning: > unused variable ‘pAd’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:159: warning: > no return statement in function returning > non-void > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: At top > level: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:169: warning: > initialization from incompatible pointer > type > > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_probe’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:238: warning: > assignment discards qualifiers from pointer target type > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:287: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:290: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:294: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:344: warning: > ISO C90 forbids mixed declarations and code > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_open’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:422: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:472: warning: > passing argument 2 of ‘request_irq’ from incompatible pointer type > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RTMPSendPackets’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:627: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RTMPIsr’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:713: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_get_wireless_stats’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:825: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_get_ether_stats’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:873: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_close’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:942: error: > ‘struct net_device’ has no member named ‘priv’ > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c: In function > ‘RT61_remove_one’: > /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.c:1002: error: > ‘struct net_device’ has no member named ‘priv’ > make[4]: *** > [/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module/rtmp_main.o] Error 1 > make[3]: *** [_module_/usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module] > Error 2 > make[2]: *** [sub-make] Error 2 > make[1]: *** [all] Error 2 > make[1]: se sale del directorio `/usr/src/linux-headers-2.6.30-1-amd64' > make: *** [all] Error 2 > > Acá se me acabó la ciencia. No tengo idea. > > ############################################################### > > Intentando complira el driver que provee http://rt2x00.serialmonkey.com > > /usr/src/rt61-1.1.0-b1/Module# make all > make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.30-1-amd64' > CC [M] /usr/src/rt61-1.1.0-b1/Module/rtmp_main.o > In file included from /usr/src/rt61-1.1.0-b1/Module/rt_config.h:158, > from /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:45: > /usr/src/rt61-1.1.0-b1/Module/rtmp.h:50: error: conflicting types for > ‘irqreturn_t’ > /usr/src/linux-headers-2.6.30-1-common/include/linux/irqreturn.h:16: error: > previous declaration of ‘irqreturn_t’ was > here > > In file included from > /usr/src/rt61-1.1.0-b1/Module/rt_config.h:158, > > from > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:45: > > /usr/src/rt61-1.1.0-b1/Module/rtmp.h:53:1: warning: "IRQ_RETVAL" > redefined > In file included from > /usr/src/linux-headers-2.6.30-1-common/include/linux/interrupt.h:10, > > from > /usr/src/rt61-1.1.0-b1/Module/rt_config.h:74, > > from > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:45: > > /usr/src/linux-headers-2.6.30-1-common/include/linux/irqreturn.h:17:1: > warning: this is the location of the previous > definition > > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘rt2x00_get_drvinfo’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:74: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:78: error: ‘struct device’ has no > member named ‘bus_id’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘rt2x00_get_regs’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:91: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘rt2x00_get_eeprom’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:112: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘RT61_probe’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:185: error: ‘struct device’ has > no member named ‘bus_id’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:195: error: implicit declaration > of function ‘SET_MODULE_OWNER’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:232: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:235: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:239: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:256: error: ‘struct net_device’ > has no member named ‘get_wireless_stats’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RT61_open’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:319: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:374: error: ‘SA_SHIRQ’ undeclared > (first use in this function) > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:374: error: (Each undeclared > identifier is reported only once > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:374: error: for each function it > appears in.) > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:374: warning: passing argument 2 > of ‘request_irq’ from incompatible pointer type > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RTMPSendPackets’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:520: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RTMPIsr’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:606: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘rt61_set_mac_address’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:704: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘RT61_get_wireless_stats’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:760: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function > ‘RT61_get_ether_stats’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:806: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RT61_set_rx_mode’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:865: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RT61_close’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:886: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘RT61_remove_one’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:936: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘rt61_suspend’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:984: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘rt61_resume’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:1010: error: ‘struct net_device’ > has no member named ‘priv’ > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:1013: warning: ignoring return > value of ‘pci_enable_device’, declared with attribute warn_unused_result > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c: In function ‘rt61_init_module’: > /usr/src/rt61-1.1.0-b1/Module/rtmp_main.c:1059: error: implicit declaration > of function ‘pci_module_init’ > make[4]: *** [/usr/src/rt61-1.1.0-b1/Module/rtmp_main.o] Error 1 > make[3]: *** [_module_/usr/src/rt61-1.1.0-b1/Module] Error 2 > make[2]: *** [sub-make] Error 2 > make[1]: *** [all] Error 2 > make[1]: se sale del directorio `/usr/src/linux-headers-2.6.30-1-amd64' > rt61.ko failed to build! > make: *** [module] Error 1 > > ############################################################### > > Los errores, como ven, son muy similares, por lo que si alguno sabe cómo > solucionarlo sin necesidad de ponerme a hacer un curso de C, lo agradecería > mucho. > Por los tutos que hay en la red, al parecer, la gente de *buntu no tiene > estos problemas... > > Muchas gracias. > > JAP > > Si te decides por compilarlos , recuerda tener instalado el paquete build-essential y los headers de tu kernel. Yo te recomiendo que si quieres compilarte los drivers "buenos" te pases por aquí http://linuxwireless.org/ y descargues el compat-wireless. Seguramente tu problema era que no levantabas la interfaz. Suerte.