Bug 15300

Summary: rt2800usb - Linksys WUSB600N rev2 (still) doesn't work
Product: Drivers Reporter: Andreas Sturmlechner (andreas.sturmlechner)
Component: network-wirelessAssignee: drivers_network-wireless (drivers_network-wireless)
Status: RESOLVED DUPLICATE    
Severity: normal CC: geldimbenbu, gwingerde, IvDoorn, linville
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.33 Subsystem:
Regression: No Bisected commit-id:

Description Andreas Sturmlechner 2010-02-14 14:03:10 UTC
Support for this stick was added several weeks ago to Linus' tree with commit 5e31258945f60dff65952575625cac214a75893e

udev:

KERNEL[1266155901.541518] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-2 (usb)
KERNEL[1266155901.545979] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0 (usb)
UDEV  [1266155901.571771] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-2 (usb)
UDEV  [1266155901.585336] add      /devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0 (usb)

This is what dmesg prints out when plugging it in:

[ 1004.006881] usb 2-2: USB disconnect, address 3
[ 1023.911071] usb 2-2: new high speed USB device using ehci_hcd and address 4
[ 1024.057719] usb 2-2: New USB device found, idVendor=1737, idProduct=0079
[ 1024.057727] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1024.057733] usb 2-2: Product: Linksys WUSB600N Wireless-N USB Network Adapter with Dual-Band v
[ 1024.057738] usb 2-2: Manufacturer: Linksys
[ 1024.125453] phy1 -> rt2800_init_eeprom: Error - Invalid RT chipset detected.
[ 1024.125463] phy1 -> rt2x00lib_probe_dev: Error - Failed to allocate device.
[ 1024.125511] usbcore: registered new interface driver rt2800usb

grep RT2 .config:

CONFIG_RT2X00=m
# CONFIG_RT2400PCI is not set
# CONFIG_RT2500PCI is not set
CONFIG_RT2800PCI_PCI=m
# CONFIG_RT2800PCI is not set
# CONFIG_RT2500USB is not set
CONFIG_RT2800USB=m
CONFIG_RT2800_LIB=m
CONFIG_RT2X00_LIB_USB=m
CONFIG_RT2X00_LIB=m
CONFIG_RT2X00_LIB_HT=y
CONFIG_RT2X00_LIB_FIRMWARE=y
CONFIG_RT2X00_LIB_CRYPTO=y
CONFIG_RT2X00_LIB_LEDS=y
CONFIG_RT2X00_DEBUG=y
# CONFIG_RT2860 is not set
# CONFIG_RT2870 is not set


I haven't tried yet with the module built in instead, but I will now. rc4 oopsed back then.
Comment 1 Andreas Sturmlechner 2010-02-14 15:27:04 UTC
ok... a bit embarrassing - the error vanishes with 'rt2870.bin' placed in /lib/firmware.

Still, udev won't recognize the device and there is no according path in /sys/class/net/
Comment 2 Andreas Sturmlechner 2010-02-14 16:13:49 UTC
(In reply to comment #1)
> ok... a bit embarrassing - the error vanishes with 'rt2870.bin' placed in
> /lib/firmware.
> 
> Still, udev won't recognize the device and there is no according path in
> /sys/class/net/

Wrong again, I got confused by my second attempt with a built-in rt2800usb.

So, I always get the above mentioned error, whether I'm using the module or have it built-in, and also regardless of re-, hot- or coldplugging it.

Is the firmware image actually needed with this kernel driver?
Comment 3 Andreas Sturmlechner 2010-02-16 19:23:19 UTC
It seems that the commit that added support for the stick was wrong. A user on the Gentoo forums who got it working pointed me to this German manual where they explain that this particular version of the Linksys stick does instead have an RT3572 chip, and NOT the RT2870.

http://www.linux-club.de/viewtopic.php?f=19&t=107288&start=0

The manual describes how to get it working with the Ralink RT3572 2.3.0.0 sources. That made it switch on its blue LED at last, and detecting my wireless network, but then the kernel (2.6.31.12, 2.6.32.2) oopsed out on connection.
Comment 4 Ivo van Doorn 2010-02-16 21:01:14 UTC
RT3572 is part of the rt2870 family.

The rt2800usb should work with rt3573, but at the moment the entire driver is simply not working for most chipsets.
Comment 5 John W. Linville 2010-03-15 00:46:40 UTC

*** This bug has been marked as a duplicate of bug 14808 ***