Bug 13459

Summary: Certain devices are not enabled by rt2870 driver
Product: Drivers Reporter: Dylan Harkleroad (d.harkleroad)
Component: network-wirelessAssignee: Greg Kroah-Hartman (greg)
Status: RESOLVED CODE_FIX    
Severity: normal CC: jakob.gruber, linville, matt
Priority: P1    
Hardware: All   
OS: Linux   
URL: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/350695
Kernel Version: 2.6.30 Subsystem:
Regression: No Bisected commit-id:

Description Dylan Harkleroad 2009-06-05 09:40:30 UTC
Certain drivers are not enabled by the rt2870. One being the Linksys WUSB100 card.

Basically it's missing the device id from rt2870.h

Adding the following to rt2870.h fixes the problem.

{USB_DEVICE(0x1737,0x0070)}, /* Linksys */

Another one that is apparently missing is:

{USB_DEVICE(0x2019,0xED14)}, /* Planex Communications, Inc. */
Comment 1 Jakob Gruber 2009-06-27 17:27:47 UTC
Another one that's missing is 

Bus 002 Device 003: ID 050d:815c Belkin Components

{USB_DEVICE(0x050D,0x815C)}, /* Belkin */

Which corresponds to a Belkin F5D8053 N Wireless USB Adapter.
Comment 2 John W. Linville 2009-07-01 17:25:03 UTC
I suggest that you prepare a patch and send it to linux-kernel@vger.kernel.org and gregkh@suse.de...
Comment 3 Jakob Gruber 2009-07-02 17:43:16 UTC
In rt2870.h, there are 2 lists of USB devices. One is within 

#ifndef RT30xx
#endif

and the other in 

#ifdef RT30xx
#endif

Since I'm not sure whether to add the devices to both lists or only the first, I'm posting a patch for both variations.

Patch 1, add devices only to first list:

--- a/drivers/staging/rt2870/rt2870.h
+++ b/drivers/staging/rt2870/rt2870.h
@@ -77,6 +77,9 @@
 #ifndef RT30xx
 #define RT2870_USB_DEVICES	\
 {	\
+	{USB_DEVICE(0x2019,0xED14)}, /* Planex Communications, Inc. */
+	{USB_DEVICE(0x1737,0x0070)}, /* Linksys */
+	{USB_DEVICE(0x050D,0x815C)}, /* Belkin */		\
 	{USB_DEVICE(0x148F,0x2770)}, /* Ralink */		\
 	{USB_DEVICE(0x1737,0x0071)}, /* Linksys WUSB600N */	\
 	{USB_DEVICE(0x148F,0x2870)}, /* Ralink */		\

Patch 2, add devices to both lists:

--- a/drivers/staging/rt2870/rt2870.h
+++ b/drivers/staging/rt2870/rt2870.h
@@ -77,6 +77,9 @@
 #ifndef RT30xx
 #define RT2870_USB_DEVICES	\
 {	\
+	{USB_DEVICE(0x2019,0xED14)}, /* Planex Communications, Inc. */
+	{USB_DEVICE(0x1737,0x0070)}, /* Linksys */
+	{USB_DEVICE(0x050D,0x815C)}, /* Belkin */		\
 	{USB_DEVICE(0x148F,0x2770)}, /* Ralink */		\
 	{USB_DEVICE(0x1737,0x0071)}, /* Linksys WUSB600N */	\
 	{USB_DEVICE(0x148F,0x2870)}, /* Ralink */		\
@@ -144,6 +147,9 @@
 #ifdef RT30xx
 #define RT2870_USB_DEVICES	\
 {	\
+	{USB_DEVICE(0x2019,0xED14)}, /* Planex Communications, Inc. */
+	{USB_DEVICE(0x1737,0x0070)}, /* Linksys */
+	{USB_DEVICE(0x050D,0x815C)}, /* Belkin */		\
 	{USB_DEVICE(0x148F,0x2770)}, /* Ralink */		\
 	{USB_DEVICE(0x148F,0x2870)}, /* Ralink */		\
 	{USB_DEVICE(0x148F,0x3070)}, /* Ralink 3070 */	\

Thanks!
Comment 5 Greg Kroah-Hartman 2009-08-15 16:06:09 UTC
thanks, closing out.