On Dec 7, 2010, at 7:10 AM, Arjen de Korte wrote:
Citeren Michal Hlavinka <[email protected]>:
I've been asked to find out some answers from libusb maintainer, so
I'm
forwarding them:
- Why nut uses legacy libusb-0.1 api and not libusb 1.0 ?
Well, mostly because at the time we started adding USB support to
NUT, libusb-0.1 was all there is.
Also, there is a little more static friction to overcome if we switch
to libusb-1.0 - in order to keep configure-time complexity down, we
would want to switch *all* of the drivers to libusb-1.0 (since not all
of the USB-based drivers are served by the common code that usbhid-ups
uses). The real trick there is runtime testing of all of the drivers.
If you are trying to eliminate direct dependencies on the old
libusb-0.1 package, there is always the libusb-0.1-compat package. I
believe that FreeBSD 8+ has incorporated that into their libusb-1.0
API for the new USB stack, and aside from some changes in our
configuration scripts, it seems to work well at runtime.
NUT as a whole doesn't reap many of the benefits of libusb-1.0 since
the NUT architecture uses a single thread and process to interact with
the hardware. A more integrated system like UPower might be better
served by the asynchronous calls in 1.0.
--
Charles Lepple
_______________________________________________
Nut-upsdev mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/nut-upsdev