rt2500 card "broken" after mac address change

Live forum: http://rt2x00.serialmonkey.com/viewtopic.php?t=5211

raphy

21-02-2009 18:23:40

Hello everyone,

Yesterday I was playing with my r2500 wifi card, and i tried to change the mac address. Unfortunately, after that, it didn't work anymore, even after a reboot.

Sometimes it will have its original address, somtimes its mac address will be 000000000000.

There is no error messages at all, but when i tried to connect to my AP, iwconfig shows that i'm not associated, or associated with a link quality of 0/100.

I tried to reinstall the driver (serial monkey one), but without success.
Currently, I'm using this same card with ndiswrapper with the original mac address, so obviously the card is fine. The ralink driver works too (I mean, as badly as it usually does).

Does anyone ever had this problem? The ndiswrapper module has poor performance, I would be glad if I could use the serial monkey driver again?

Here is what the relevant part of the dmesg looks like Quote
[quote11dm6594]rt2500 00000108.0 PCI INT A -> Link[APC1] -> GSI 16 (level, low) -> IRQ 16
rt2500 1.1.0 CVS CVS Release http//rt2x00.serialmonkey.com
rt2500 Info - Mac address changed to 0021008193c3.
rt2500 00000108.0 PCI INT A disabled
rt2500 00000108.0 PCI INT A -> Link[APC1] -> GSI 16 (level, low) -> IRQ 16
rt2500 1.1.0 CVS CVS Release http//rt2x00.serialmonkey.com
udev renamed network interface ra0 to ra3
device ra3 entered promiscuous mode
rt2500 00000108.0 PCI INT A disabled
[/quote11dm6594]

Any idea is welcome

IvD

21-02-2009 18:29:22

Please provide kernel version/driver version/distro/debug information etc etc.
If the _rt2x00_ driver is failing, provide the rt2x00 debug messages, if the _legacy_ drive is failing provide the legacy debug messages.

raphy

21-02-2009 18:40:06

Ok, sorry.

So I'm using the kernel 2.6.28 (gentoo revisited), with the driver CVS 1.1.0 (but with a revision that worked fine until yesterday).

As for the debug information, that's the problem, there's is no error message. Modprobe rt2500 works fine, ifconfig ra0 up works fine, but if I tried to use the iwconfig command to connect to an ap, it doesn't, but there is still no error message at all.
Example [code1bbf10v2]fitz raph # iwconfig ra0 essid Neuf\ Wifi key off channel auto
fitz raph # iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

ra0 RT2500 Wireless ESSID:""
Mode:Managed Frequency=2.412 GHz Bit Rate=11 Mb/s Tx-Power:-2 dBm
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=0/100 Signal level:-120 dBm Noise level:-79 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

fitz raph #
[/code1bbf10v2]

Also, the ifconfig used to give an output like this[code1bbf10v2]ra0 Link encap:UNSPEC HWaddr 00-11-09-BF-AD-E8-6C-6F-00-00-00-00-00-00-00-00
[/code1bbf10v2]

Now, it's something like this [code1bbf10v2]ra0 Link encap:Ethernet HWaddr 00:11:09:bf:ad:e8[/code1bbf10v2]

Maybe that can give you an hint.

IvD

21-02-2009 19:07:02

Ok, you are using the legacy driver and not rt2x00. I'll move this to the correct forum.

raphy

21-02-2009 19:09:21

Oh I thought the legacy drivers were the old one from Ralink. My bad. I'll change my first message.

IvD

21-02-2009 19:19:31

Well since you are using 2.6.28 anyway, you could try to use the in-kernel rt2500 driver to see if that works better..

raphy

21-02-2009 19:32:43

Unfortunately their driver is still unusable (the connection get stuck after a few minutes and has to be restarted). But it works "as usual", as well as the windows driver with ndiswrapper. The only driver that doesn't work anymore is your driver, which ironically was the only one who worked decently (it is actually very good).

IvD

21-02-2009 19:44:43

Unfortunately their driver is still unusable (the connection get stuck after a few minutes and has to be restarted).
[/quote2i8ay1w3]

Could you post more information (+ debug info) on the rt2x00 forum (the one where you initially posted this topic)?


The only driver that doesn't work anymore is your driver[/quote2i8ay1w3]

Well technically, the rt2x00 driver is "ours", and the legacy driver which you are referring to is the Ralink driver + patches from us. ;)
In any case, both are maintained by us. )

raphy

21-02-2009 19:54:50

Unfortunately their driver is still unusable (the connection get stuck after a few minutes and has to be restarted).
[/quote2uslr297]

Could you post more information (+ debug info) on the rt2x00 forum (the one where you initially posted this topic)?[/quote2uslr297]

Sure, how do I get the debug information?


The only driver that doesn't work anymore is your driver[/quote2uslr297]

Well technically, the rt2x00 driver is "ours", and the legacy driver which you are referring to is the Ralink driver + patches from us. ;)
In any case, both are maintained by us. )[/quote2uslr297]

So the in-kernel driver is the 2x00 driver from your project?

I'll recompile my kernel and give you info about the in-built rt2500 driver.

IvD

21-02-2009 20:04:08


Sure, how do I get the debug information?
[/quoteoy9814dx]

When compiling the kernel, enable the config option CONFIG_RT2X00_DEBUG
After that you will find debug messages in /var/log/messages as usual.



The only driver that doesn't work anymore is your driver[/quoteoy9814dx]

Well technically, the rt2x00 driver is "ours", and the legacy driver which you are referring to is the Ralink driver + patches from us. ;)
In any case, both are maintained by us. )[/quoteoy9814dx]

So the in-kernel driver is the 2x00 driver from your project?
[/quoteoy9814dx]

That is right.


I'll recompile my kernel and give you info about the in-built rt2500 driver.[/quoteoy9814dx]

Thanks.

Vern

22-02-2009 16:15:42

So I'm using the kernel 2.6.28 (gentoo revisited), with the driver CVS 1.1.0 (but with a revision that worked fine until yesterday).[/quote1fwnjt0i]Sounds like you may not have recompiled the legacy driver for kernel 2.6.28. If you do, you'll probably get compile errors because the kernel interface has changed yet again.

Thanks,

raphy

22-02-2009 16:21:21

And yet, it compiles perfectly.

[code3t3blhyl] * Fetching CVS module source/rt2500 into /usr/portage/distfiles/cvs-src ...
* Running cvs -q -f -z1 -d ":pserver:anonymous:@rt2400.cvs.sourceforge.net:/cvsroot/rt2400" login
Logging in to :pserver:anonymous@rt2400.cvs.sourceforge.net:2401/cvsroot/rt2400
* Running cvs -q -f -z1 -d ":pserver:anonymous@rt2400.cvs.sourceforge.net:/cvsroot/rt2400" checkout source/rt2500
U source/rt2500/CHANGELOG
U source/rt2500/FAQ
U source/rt2500/LICENSE
U source/rt2500/THANKS
U source/rt2500/Module/Makefile
U source/rt2500/Module/README
U source/rt2500/Module/RT2500STA.dat
U source/rt2500/Module/TESTING
U source/rt2500/Module/assoc.c
U source/rt2500/Module/auth.c
U source/rt2500/Module/auth_rsp.c
U source/rt2500/Module/connect.c
U source/rt2500/Module/eeprom.c
U source/rt2500/Module/ifcfg-ra0
U source/rt2500/Module/iwpriv_usage.txt
U source/rt2500/Module/md5.c
U source/rt2500/Module/md5.h
U source/rt2500/Module/mlme.c
U source/rt2500/Module/mlme.h
U source/rt2500/Module/oid.h
U source/rt2500/Module/rt2560.h
U source/rt2500/Module/rt2x00debug.c
U source/rt2500/Module/rt2x00debug.h
U source/rt2500/Module/rt_config.h
U source/rt2500/Module/rtmp.h
U source/rt2500/Module/rtmp_data.c
U source/rt2500/Module/rtmp_def.h
U source/rt2500/Module/rtmp_info.c
U source/rt2500/Module/rtmp_init.c
U source/rt2500/Module/rtmp_main.c
U source/rt2500/Module/rtmp_tkip.c
U source/rt2500/Module/rtmp_type.h
U source/rt2500/Module/rtmp_wep.c
U source/rt2500/Module/sanity.c
U source/rt2500/Module/sync.c
U source/rt2500/Module/wpa.c
U source/rt2500/Module/wpa.h
* Copying source/rt2500 from /usr/portage/distfiles/cvs-src ...
* CVS module source/rt2500 is now in /var/tmp/paludis/net-wireless-rt2500-9999/work
>>> Done src_unpack
>>> Starting src_compile
* Preparing rt2500 module
make HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= -C /usr/src/linux M=/var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module modules
make: Entering directory `/usr/src/linux-2.6.28-gentoo-r1'
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_main.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/mlme.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/connect.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/sync.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/assoc.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/auth.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/auth_rsp.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_data.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_init.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/sanity.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_wep.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/wpa.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/md5.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_tkip.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rtmp_info.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rt2x00debug.o
CC [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/eeprom.o
LD [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rt2500.o
Building modules, stage 2.
MODPOST 1 modules
CC /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rt2500.mod.o
LD [M] /var/tmp/paludis/net-wireless-rt2500-9999/work/source/rt2500/Module/rt2500.ko
make: Leaving directory `/usr/src/linux-2.6.28-gentoo-r1'
>>> Done src_compile[/code3t3blhyl]

Weird isn't it? shock

Vern

24-02-2009 16:21:16

Hi raphy,

Actually, on second thought (I often think after speaking), I can see where that may be the case. The problem is that the net device structure has changed in 2.6.28. So it could compile cleanly, but still have problems when you try to run it.

Thanks,

raphy

24-02-2009 22:01:07

Yeah, that may be a valid theory. Unfortunately, I can go back to previous kernel as my partitions are in EXT4, and the driver doesn't compile with the kernel 2.6.29. Stuck D