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.

Responder a