fingerprints

Bernd Walter ticso at cicely12.cicely.de
Mon Dec 27 02:02:20 PST 2004


On Mon, Dec 27, 2004 at 02:20:10AM +0100, Barry Bouwsma wrote:
> > > Bernd Walter (ticso) has a ports skeleton for the NetBSD USB utilities
> > 
> > I didn't see any extra email postings on this, I hope it doesn't just
> > disappear.  Can I ask one favor?  I would VERY much appreciate it if you
> > would pick a single one of the usb devices, and I will read everything I
> 
> Erm, if I understand you right, how about a D-Link DU-128+ TA?
> Here are some hints:
> bLength=18 bDescriptorType=1 bcdUSB=1.10 bDeviceClass=255 bDeviceSubClass=0
>                                          ^^^^^^^^^^^^^^^^
>   bNumEndpoints=0 bInterfaceClass=255 bInterfaceSubClass=0
>                   ^^^^^^^^^^^^^^^^^^^
>   bNumEndpoints=5 bInterfaceClass=255 bInterfaceSubClass=0
>                   ^^^^^^^^^^^^^^^^^^^
> Also, src/sys/dev/usb/usb.h .
> 
> If I'm not understanding you right, then sorry...

bDeviceClass=255 means that the whole device is vendor specific.
You can see what kind of interfaces with which pipes it uses, but
beeing vendor specific you don't know their purpose.

> > usbctl is the tool to get an overview of the device layout.
> > It's old and has a number of bugs in respect to port system compliance
> 
> Also `usbgen' is useful too.  Although I'm not sure that as it exists,
> it's doing everything it should, as I seem to have some errors pulling
> some strings out of some devices.
> getstring 1 failed (error=5)
> getstring 2 failed (error=5)
> I wonder if the recent NetBSD language delta has anything to do with
> this; as recent NetBSD can retrieve the vendor of my sound card while
> the old FreeBSD code I'm still running can't...

I don't know, but I think it did run last year.

> (usbctl is the tool I was thinking of -- I happened to have an old
> binary compiled for an old kernel with a different ioctl() to query
> the device.)  Also of interest is `testlibusb' in the devel/libusb port.
> They pretty much present the same info in different ways.

libusb requires ugen presense of a device, while usbctl runs by
accessing a device by opening the bus.

-- 
B.Walter                   BWCT                http://www.bwct.de
bernd at bwct.de                                  info at bwct.de



More information about the freebsd-usb mailing list