static usb device configuration
Emanuel Haupt
ehaupt at FreeBSD.org
Mon Dec 13 07:56:53 UTC 2010
Andrew Thompson <thompsa at FreeBSD.org> wrote:
> On 13 December 2010 07:49, Emanuel Haupt <ehaupt at freebsd.org> wrote:
> > Is there any way I can make sure that the following device:
> >
> > ugen1.3: <product 0x6001 vendor 0x0403> at usbus1, cfg=0 md=HOST
> > spd=FULL (12Mbps) pwr=ON
> >
> > bLength = 0x0012
> > bDescriptorType = 0x0001
> > bcdUSB = 0x0200
> > bDeviceClass = 0x0000
> > bDeviceSubClass = 0x0000
> > bDeviceProtocol = 0x0000
> > bMaxPacketSize0 = 0x0008
> > idVendor = 0x0403
> > idProduct = 0x6001
> > bcdDevice = 0x0400
> > iManufacturer = 0x0000 <no string>
> > iProduct = 0x0000 <no string>
> > iSerialNumber = 0x0003 <Reader 195>
> > bNumConfigurations = 0x0001
> >
> > Is always registered as:
> >
> > /dev/usb/1.3.0
>
> You would be better making a symlink using devd rules, something like
>
> notify 100 {
> match "system" "USB";
> match "subsystem" "DEVICE";
> match "type" "ATTACH";
> match "vendor" "0x0403";
> match "product" "0x6001";
> action "ln -s /dev/$cdev /dev/mydevice";
> };
Unfortunately the program in question uses libusb and the configuration
only allows to define the device by specifying <busnum>:<devaddr> and
there are multiple identical devices around with only iSerialNumber
being different from each other. Somehow I need to make sure the
devices in the USB hub are always recognized in the same order.
I guess one solution would be to generate the configuration each time
the program starts.
Emanuel
More information about the freebsd-usb
mailing list