Ax88172 vs FreeBSD USB stack

Bill Paul wpaul at FreeBSD.ORG
Fri Mar 28 12:54:47 PST 2003


> On Fri, Mar 28, 2003 at 11:16:55AM -0800, Maksim Yevmenkin wrote:
> > Just FYI
> > 
> > ng_ubt(4) (/sys/netgraph/bluetooth/drivers/ubt) driver
> > (Bluetooth USB devices) makes use of two interfaces.
> 
> >From a look into the driver these interfaces serve different
> protocols.
> I asume they are unrelated from a logical standpoint, but I don't
> know bluetooth technology.
> We have a similar situation with ulpt, where we usually have up
> to three interfaces with different capabilities.
> ulpt currently pics one of them, but we could also have three different
> ulpt instances taking each one of them.

The uplcom driver also uses two interfaces, but in that case, they
put the interrupt endpoint on interface 0 and the bulk in/out endpoints
on interface 1. When I saw that the AX88172 manual said that the device
was supposed to have two interfaces, I wondered if maybe it had a
similar setup, but I couldn't figure out how to access the second
interface structure. For that matter, I didn't know for sure how to
tell if it actually had one. (Sometimes manuals lie.) Hopefully when I
try usbutils when I get home after work, I will learn more.
 
> Well the AC88172 PDF is very clear about having 2 interfaces.
> The document also speaks about 4 endpoints, which I expect to be on
> interface 0 as they also have listed endpoint number 0 - they don't
> tell in the document.
> What I currently don't know is why there are 2 interfaces.
> The document also mentions some homenet capabilities on RJ11 - whatever
> it means.

The AX88172 supports both regular ethernet and HomePNA (ethernet
over cat3 telephone wiring) transceivers. You don't need a second
USB interface for this though: you send/receive packets the same
way regardless of what kind of transceiver you have. (The ADMtek
Pegasus (if_aue) supports the same feature and only uses one set
of endpoints.)

> Maybe it's an hardware optional interface, which is disabled in this
> special device.
> 
> For the ID strings - it seems that the hardware vendor just left the
> string empty in the eeprom.

There is a UQ_NO_STRINGS quirk for this. Perhaps I should use it.

-Bill

--
=============================================================================
-Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
                 wpaul at windriver.com | Wind River Systems
=============================================================================
      "If stupidity were a handicap, you'd have the best parking spot."
=============================================================================


More information about the freebsd-hackers mailing list