Page MenuHomeFreeBSD

usb: fix the ID for the dual-band Wistron AR5523 USB NIC
ClosedPublic

Authored by adrian on Mon, Nov 18, 5:16 AM.
Referenced Files
F103096390: D47654.id146635.diff
Wed, Nov 20, 10:28 PM
Unknown Object (File)
Tue, Nov 19, 1:55 PM
Unknown Object (File)
Tue, Nov 19, 11:23 AM
Unknown Object (File)
Tue, Nov 19, 5:07 AM
Unknown Object (File)
Mon, Nov 18, 8:22 PM
Unknown Object (File)
Mon, Nov 18, 7:46 PM
Unknown Object (File)
Mon, Nov 18, 7:37 PM
Unknown Object (File)
Mon, Nov 18, 6:31 PM
Subscribers

Details

Summary
usb: fix the ID for the dual-band Wistron AR5523 USB NIC

Use the correct ID.

I've verified this against the Linux driver; it doesn't have
device 0x082a in there, only 0x0828.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 60678
Build 57562: arc lint + arc unit

Event Timeline

bz requested changes to this revision.Mon, Nov 18, 9:56 AM
bz added a subscriber: bz.

Can you please write a normal descriptive commit message.

See here for some guidance:
https://docs.freebsd.org/en/articles/committers-guide/#_why_are_commit_messages_important

This revision now requires changes to proceed.Mon, Nov 18, 9:56 AM

Huh, this arrived in:

commit 02ac6454880b59bbc5f3f74dffaffa90b30adc8b
Author: Andrew Thompson <thompsa@FreeBSD.org>
Date:   Mon Feb 23 18:31:00 2009 +0000

    Move the new USB stack into its new home.

Curiously that change is mostly moving files around but also includes some new content, in particular including usbdevs and the new AR5523_2 entry. I think usbdevs came originally from NetBSD, but the change that added AR5523_2 happened in 2010, after the commit above:

commit 958efcff9947e0a465c13b327c6d9b98486427b9
Author: christos <christos@NetBSD.org>
Date:   Wed Nov 3 20:03:02 2010 +0000

    From Anon Ymous:
    
    Port of the otus driver from OpenBSD.  This driver supports USB 2.0
    wireless network devices based on Atheros Communications AR9001U
    chipset.  It claims to support several AR9001U based adapters, but has
    only been tested with a NetGear WNDA3100 adapter (0x0846/0x9010).
    
    XXX: The EDCA support is currently missing from our network stack
    (hopefully coming soon), but the driver hooks for it are there.

OK, so this came from OpenBSD originally, and there the value was changed from 0x0828 to 0x082a with FreeBSD as a reference, in 2007:

commit 580ffd948b3e63a07ae0755a8041d14bf6b22b59
Author: damien <damien@openbsd.org>
Date:   Sat Nov 17 16:15:00 2007 +0000

    fix uath entry.
    
    from FreeBSD

Ok, looking at FreeBSD history before then I find

commit d8e40e35ce697590f03b3d5fa886ede051ee656d
Author: Sam Leffler <sam@FreeBSD.org>
Date:   Sat Nov 3 19:11:35 2007 +0000

    correct entry

diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs
index ae8853ee5d7a..d775ddf35939 100644
--- a/sys/dev/usb/usbdevs
+++ b/sys/dev/usb/usbdevs
@@ -2279,7 +2279,7 @@ product WINMAXGROUP FLASH64MC     0x6660  USB Flash Disk 64M-C
 product WISTRONNEWEB UR055G    0x0711  UR055G
 product WISTRONNEWEB AR5523_1  0x0826  AR5523
 product WISTRONNEWEB AR5523_1_NF       0x0827  AR5523 (no firmware)
-product WISTRONNEWEB AR5523_2  0x0828  AR5523
+product WISTRONNEWEB AR5523_2  0x082a  AR5523
 product WISTRONNEWEB AR5523_2_NF       0x0829  AR5523 (no firmware)
 
 /* Xerox products */

And the Linux 0x0828 arrived via

commit b7d572e1871df06a96a1c9591c71c5494ff6b624
Author: Pontus Fuchs <pontus.fuchs@gmail.com>
Date:   Tue Oct 23 20:33:57 2012 +0200

    ar5523: Add new driver
    
    This driver is for the AR5523 chipset from Atheros. It was created
    in 2007 by Christoph Hellwig but it was never finished. I found it a
    couple of months ago and after some polishing it's working pretty
    fine.
    
    The driver was written with the FreeBSD driver (uath) as reference,
    which was written with the reverse-engineered windows driver as
    reference, hence the feature set is very limited. Station mode
    only, no HW crypto offload.
    
    Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

So it could be that FreeBSD incorrectly had 0x0828, Christoph Hellwig took our driver as a reference in 2007, @sam fixed the value in to 0x082a in FreeBSD later in 2007 and then Pontus Fuchs finished off the old Linux driver but never looked at FreeBSD again to find the updated ID.

ok but i have a device with this product id! :) Maybe we need both?

OK, if you have a device that has this ID we should clearly add it back. Perhaps we should add AR5523_2_ALT or something like that for 0x882a.

adrian edited the summary of this revision. (Show Details)

update with historical reference from emaste, be clearer that
i have the NIC in question.

This revision was not accepted when it landed; it landed in state Needs Review.Tue, Nov 19, 4:54 AM
This revision was automatically updated to reflect the committed changes.