Lately, a bunch of cheap Chinese USB-to-Ethernet dongles have been
making their appearance in various parts of the world by a Chinese
vendor. Often these can be gotten for around USD$2 or less. They're
frequently referred to as HG2f09 adapters.
The VID/PID is 066b/20f9, which would lead one to think that the maker
is Linksys--except the PID doesn't appear in any Linksys registry. So
we've got a counterfeit. (Why pay good money to IF-USB when you can
just borrow a VID? I've seen the same thing in cheap USB flash drives. )
A bit of probing shows the operative device is the Asix AX88772B (and
has been verified by others).
The pragmatic approach would be to reprogram the serial configuration
EEPROM in this thing to match something better known, say, the Linksys
USB200, but Asix Taiwan is not forthcoming with their programming
utility, citing confidential, restricted to verified customers.I'm
not inclined to tear my hair out trying to write a utility for a $2 part
(there are some pretty good hints in the Asix datasheet).
Mine arrived with a mini-CD containing Windows drivers (uncertified, of
course) and Linux source (no good for OpenBSD).
At any rate, a stopgap solution for me was to simply add the following
line to the 5.2 USB if_axe.c axe_devs[] structure:
{ { USB_VENDOR_LINKSYS, 0x20f9}, AX772 | AX772B}, // Fake Linksys
HG20f9
It's an ugly hack, but it seems to work just fine. I have a bit of a
dilemma tagging the code as if this really were a Linksys-badged
device. I'll leave the symbolic definitions to those official
custodians of OpenBSD source for a cleaner version, should the need for
this arise.
You can see the extent of the problem, just by searching the web for
HG2f09.
Perhaps there should be some sort of USB VID/PID aliasing capability
to avoid having to rebuild the kernel for this sort of thing.
Submitted for whatever it's worth...
Cheers,
Chuck Guzis
Sydex, Inc.