diff mbox

rt2x00: Get rid of duplicate usb id from rt2500usb

Message ID 1251978140-4992-1-git-send-email-amit.kucheria@canonical.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Amit Kucheria Sept. 3, 2009, 11:42 a.m. UTC
USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
defined. Remove it from rt2500usb.

Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
Cc: Ivo van Doorn <IvDoorn@gmail.com>
---
 drivers/net/wireless/rt2x00/rt2500usb.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

Comments

Ivo van Doorn Sept. 3, 2009, 11:54 a.m. UTC | #1
> USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
> defined. Remove it from rt2500usb.
>
> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> Cc: Ivo van Doorn <IvDoorn@gmail.com>

NACK

Users have reported that this is a valid rt2500usb ID. You can thank the
manufacturer of the dongle to produce dongles with the same USB ID but
with different chipsets.

Ivo

> ---
>  drivers/net/wireless/rt2x00/rt2500usb.c |    1 -
>  1 files changed, 0 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
> index ce75426..2e9fac7 100644
> --- a/drivers/net/wireless/rt2x00/rt2500usb.c
> +++ b/drivers/net/wireless/rt2x00/rt2500usb.c
> @@ -2020,7 +2020,6 @@ static struct usb_device_id rt2500usb_device_table[] = {
>        /* Ralink */
>        { USB_DEVICE(0x148f, 0x1706), USB_DEVICE_DATA(&rt2500usb_ops) },
>        { USB_DEVICE(0x148f, 0x2570), USB_DEVICE_DATA(&rt2500usb_ops) },
> -       { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt2500usb_ops) },
>        { USB_DEVICE(0x148f, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) },
>        /* Sagem */
>        { USB_DEVICE(0x079b, 0x004b), USB_DEVICE_DATA(&rt2500usb_ops) },
> --
> 1.6.3.3
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
John W. Linville Sept. 3, 2009, 11:55 a.m. UTC | #2
On Thu, Sep 03, 2009 at 02:42:20PM +0300, Amit Kucheria wrote:
> USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
> defined. Remove it from rt2500usb.
> 
> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> Cc: Ivo van Doorn <IvDoorn@gmail.com>

IIRC there are IDs that are used by different devices where rt73usb
covers one device and the rt2500usb covers another.  Are you sure
this is not one of those?

John
Amit Kucheria Sept. 3, 2009, 12:27 p.m. UTC | #3
On 09 Sep 03, Ivo Van Doorn wrote:
> > USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
> > defined. Remove it from rt2500usb.
> >
> > Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> > Cc: Ivo van Doorn <IvDoorn@gmail.com>
> 
> NACK
> 
> Users have reported that this is a valid rt2500usb ID. You can thank the
> manufacturer of the dongle to produce dongles with the same USB ID but
> with different chipsets.
> 
> Ivo

Interesting. On my laptop, without this patch both the drivers are loaded
(lsmod), rt2500usb aborts without allocating a device successfully but I am
unable to associate to the AP.

With the patch, I am atleast able to associate to the AP. Perhaps there is
some other side-effect.

Regards,
Amit

> > ---
> >  drivers/net/wireless/rt2x00/rt2500usb.c |    1 -
> >  1 files changed, 0 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
> > index ce75426..2e9fac7 100644
> > --- a/drivers/net/wireless/rt2x00/rt2500usb.c
> > +++ b/drivers/net/wireless/rt2x00/rt2500usb.c
> > @@ -2020,7 +2020,6 @@ static struct usb_device_id rt2500usb_device_table[] = {
> >        /* Ralink */
> >        { USB_DEVICE(0x148f, 0x1706), USB_DEVICE_DATA(&rt2500usb_ops) },
> >        { USB_DEVICE(0x148f, 0x2570), USB_DEVICE_DATA(&rt2500usb_ops) },
> > -       { USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt2500usb_ops) },
> >        { USB_DEVICE(0x148f, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) },
> >        /* Sagem */
> >        { USB_DEVICE(0x079b, 0x004b), USB_DEVICE_DATA(&rt2500usb_ops) },
> > --
> > 1.6.3.3
> >
> >
Johannes Berg Sept. 3, 2009, 1:27 p.m. UTC | #4
On Thu, 2009-09-03 at 15:27 +0300, Amit Kucheria wrote:
> On 09 Sep 03, Ivo Van Doorn wrote:
> > > USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
> > > defined. Remove it from rt2500usb.
> > >
> > > Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> > > Cc: Ivo van Doorn <IvDoorn@gmail.com>
> > 
> > NACK
> > 
> > Users have reported that this is a valid rt2500usb ID. You can thank the
> > manufacturer of the dongle to produce dongles with the same USB ID but
> > with different chipsets.
> > 
> > Ivo
> 
> Interesting. On my laptop, without this patch both the drivers are loaded
> (lsmod), rt2500usb aborts without allocating a device successfully but I am
> unable to associate to the AP.

Sounds like the detection logic is somehow messing with the device, or
rt2500usb isn't actually freeing the device for rt73usb to bind?

johannes
Ivo van Doorn Sept. 3, 2009, 2:18 p.m. UTC | #5
On Thu, Sep 3, 2009 at 1:55 PM, John W. Linville<linville@tuxdriver.com> wrote:
> On Thu, Sep 03, 2009 at 02:42:20PM +0300, Amit Kucheria wrote:
>> USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
>> defined. Remove it from rt2500usb.
>>
>> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
>> Cc: Ivo van Doorn <IvDoorn@gmail.com>
>
> IIRC there are IDs that are used by different devices where rt73usb
> covers one device and the rt2500usb covers another.  Are you sure
> this is not one of those?

Yes, I believe this particular ID was already discussed some time ago
on this list. This is one of the infamous duplicate IDs. (Fortunately not
one of those infamous Linksys devices with 5 different chipsets for the
same ID).

Ivo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ivo van Doorn Sept. 3, 2009, 2:19 p.m. UTC | #6
On Thu, Sep 3, 2009 at 3:27 PM, Johannes Berg<johannes@sipsolutions.net> wrote:
> On Thu, 2009-09-03 at 15:27 +0300, Amit Kucheria wrote:
>> On 09 Sep 03, Ivo Van Doorn wrote:
>> > > USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
>> > > defined. Remove it from rt2500usb.
>> > >
>> > > Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
>> > > Cc: Ivo van Doorn <IvDoorn@gmail.com>
>> >
>> > NACK
>> >
>> > Users have reported that this is a valid rt2500usb ID. You can thank the
>> > manufacturer of the dongle to produce dongles with the same USB ID but
>> > with different chipsets.
>> >
>> > Ivo
>>
>> Interesting. On my laptop, without this patch both the drivers are loaded
>> (lsmod), rt2500usb aborts without allocating a device successfully but I am
>> unable to associate to the AP.
>
> Sounds like the detection logic is somehow messing with the device, or
> rt2500usb isn't actually freeing the device for rt73usb to bind?

That would be odd, I believe it is working with other devices with
duplicate ID's
where first rt2500usb is loaded and then rt73usb. As far as connecting to the
device, the first thing rt2x00 does is reading the EEPROM and checking the
chipset. So no registers are being written which could upset a rt73usb device.

Ivo
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Pavel Roskin Sept. 3, 2009, 3:11 p.m. UTC | #7
On Thu, 2009-09-03 at 16:18 +0200, Ivo Van Doorn wrote:
> On Thu, Sep 3, 2009 at 1:55 PM, John W. Linville<linville@tuxdriver.com> wrote:
> > On Thu, Sep 03, 2009 at 02:42:20PM +0300, Amit Kucheria wrote:
> >> USB_DEVICE(0x148f, 0x2573) is served by the rt73usb driver where it is already
> >> defined. Remove it from rt2500usb.
> >>
> >> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> >> Cc: Ivo van Doorn <IvDoorn@gmail.com>
> >
> > IIRC there are IDs that are used by different devices where rt73usb
> > covers one device and the rt2500usb covers another.  Are you sure
> > this is not one of those?
> 
> Yes, I believe this particular ID was already discussed some time ago
> on this list. This is one of the infamous duplicate IDs. (Fortunately not
> one of those infamous Linksys devices with 5 different chipsets for the
> same ID).

The famous Linksys devices can be distinguished by the textual PCMCIA
ID.  In this case, there is no reliable way to distinguish the devices
without trying the drivers.  I tried and could not find any difference
between "lsusb -v" output for the devices said to be supported by
rt2500usb and rt73usb.
diff mbox

Patch

diff --git a/drivers/net/wireless/rt2x00/rt2500usb.c b/drivers/net/wireless/rt2x00/rt2500usb.c
index ce75426..2e9fac7 100644
--- a/drivers/net/wireless/rt2x00/rt2500usb.c
+++ b/drivers/net/wireless/rt2x00/rt2500usb.c
@@ -2020,7 +2020,6 @@  static struct usb_device_id rt2500usb_device_table[] = {
 	/* Ralink */
 	{ USB_DEVICE(0x148f, 0x1706), USB_DEVICE_DATA(&rt2500usb_ops) },
 	{ USB_DEVICE(0x148f, 0x2570), USB_DEVICE_DATA(&rt2500usb_ops) },
-	{ USB_DEVICE(0x148f, 0x2573), USB_DEVICE_DATA(&rt2500usb_ops) },
 	{ USB_DEVICE(0x148f, 0x9020), USB_DEVICE_DATA(&rt2500usb_ops) },
 	/* Sagem */
 	{ USB_DEVICE(0x079b, 0x004b), USB_DEVICE_DATA(&rt2500usb_ops) },