RT2400 errors - won't scan, invalid EEPROM, and more

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

benchang

08-07-2009 15:38:00

Apologies if this is already answered elsewhere, the search function in the forum was giving me some trouble. Apologies for typos in code output also, since I have no network on the machine in question, I'm typing output in by hand.

I have a Linksys WMP54G. lspci tells me it's an RT2400 chipset. I'm running Kubuntu 9.04 64 bit. The rt2400pci driver is loading. Sometimes at boot I get a wlan0 interface, other times not. In any case I can't scan or connect to any networks (using wicd). dmesg shows me some interesting errors, which I'll type in below.

I have to admit I'm really deeply confused about this, but I think it can all probably get solved really easily.

[codetpzmlwiw]
05:06.0 Unclassified device [0080]: RaLink Wireless PCI Adapter RT2400 / RT2460
Subsytem: Linksys Device 0055
Flags: slow devsel, IRQ 18
Memory at fdf0000 (32-bit, non-prefetchable) [size=32K]
Capabilities: [40] Power Management version 2
Kernel modules: rt2400pci
[/codetpzmlwiw]

here are some errors from dmesg
[codetpzmlwiw]
rt2400pci 0000:05:06.0: enabling device (0000 -> 0002)
rt2400pci 0000:05:06.0: PCI INT A -> Link[APC33] -> GSI 18 (level, low) -> IRQ 18
phy0 -> rt2400pci_validate_eeprom: Error - Invalid EEPROM data detected
phy0 -> rt2x00lib_probe_dev: Error - Failed to allocate device.
rt2400pci 0000:05:06.0: PCI INT A disabled
rt2400pci: probe of 0000:05:06.0 failed with error -22
[/codetpzmlwiw]

this time around, iwconfig only shows me lo, eth0, and pan0. ifconfig shows me eth0 and lo. In previous boots I did get wlan0 to appear, and tried bringing it up using wicd and wpa_supplicant. The error messages there had to do with an inability to set the scanning frequency, which I also get from trying to scan or set the frequency using iwconfig directly.

I'll try and reboot repeatedly until I can replicate those errors, but in the meantime

1. is the invalid eeprom error the root of the problem?
2. do I need to get firmware for this device? I saw in other threads that downloading firmware from ralinktech might be needed (since I'm on Ubuntu, so it doesn't ship with it), but on the ralinktech site I only see firmware for RT2501, RT2860PCI , and RT2870USB. Is there firmware for the RT2400?


EDIT new results, error messages

After this boot, I didn't get the firmware error, and I have the wireless interface - but still can't connect to anything.

iwconfig
[codetpzmlwiw]
wlan0
IEEE 802.11b ESSID:""
Mode:Managed
Frequency:2.437 GHz
Access Point: Not-Associated
Tx-Power=20 dBm
Retry min limit:7
RTS thr:off
Fragment thr=2352 B
[/codetpzmlwiw]

ifconfig
[codetpzmlwiw]
wlan0
Link encap:Ethernet HWaddr xx:xx:xx:xx:xx:xx
UP BROADCAST MULTICAST MTU:1500 Metric:1
[/codetpzmlwiw]

However, wicd still says "No wireless networks found."

iwlist scan says "No scan results."

lfcorreia

08-07-2009 17:38:17

Please provide a full [code75zy1bhg]lspci -nn[/code75zy1bhg] to verify the correct card ID.

benchang

09-07-2009 02:40:05

thanks - here it is

[codee6crx5yc]
05:06.0 Unclassified device [0080]: RaLink Wireless PCI Adapter RT2400 / RT2460 [1814:0101]
[/codee6crx5yc]

more dmesg excerpts

[codee6crx5yc]
rt2400pci 0000:05:06.0: enabling device (0000 -> 0002)
rt2400pci 0000:05:06.0: PCI INT A -> Link[APC3] -> GSI 18 (level,low) -> IRQ 18
phy0: selected rate control algorithm 'pid'
Registered led device: rt2400pci-phy0:radio

phy0 -> rt2400pci_bbp_read: Error - BBCSR register busy. Read failed.
phy0 -> rt2400pci_wait_bbp_ready: Error - BBP register access failed, aborting.
phy0 -> rt2400pci_set_device_state: Error - Device failed to enter state 4 (-5).
ADDRCONF(NETDEV_UP): wlan0: link is not ready

phy0: failed to set freq to 2412 MHz for scan
phy0 -> rt2400pci_bbp_read: Error - BBCSR register busy. Read failed.
phy0 -> rt2400pci_wait_bbp_ready: Error - BBP register access failed, aborting.
phy0 -> rt2400pci_set_device_state: Error - Device failed to enter state 4 (-5).

(errors repeat for the other frequencies as well)

phy0: failed to restore operational channel after scan

phy0 -> rt2400pci_set_device_state: Error - Device failed to enter state 3 (-16).
phy0 -> rt2400pci_set_device_state: Error - Device failed to enter state 4 (-5).
phy0: failed to set freq to 2412 MHz for scan

(repeated for other frequencies)

[/codee6crx5yc]

IvD

09-07-2009 04:50:08

This sounds like hardware problems, does the device work on windows or on another machine?

benchang

10-07-2009 15:02:53

Solved it. Before returning the card to Best Buy, I tried it in another PCI slot. This time lspci identified it as some kind of random IBM piece of hardware. I put it back in the slot it was in before. Now it comes up as an RT2561/RT61, uses the rt61pci driver, and everything works immediately. )

I think the only thing that changed is that I screwed the antenna on tighter. weird voodoo, but good.

Anyway, thanks for the great work on these drivers!