This library emulates Jungo Windrvr USB functions in userspace which are
required by XILINX impact to access the Platform cable USB. With this library
it is possible to access the cable without loading a proprietary kernel module
which breaks with every new kernel release. It uses the USB functions provided
by the libusb userspace library instead and should work on every kernel version
which is supported by libusb. It was written against impact from ISE Webpack
9.1SP1 and will very probably not work with older impact versions (<9.1).

Build the library by calling `make'.

To use this library you have to preload the library before starting impact:

$ LD_PRELOAD=/path/to/libusb-driver.so impact
or
$ export LD_PRELOAD=/path/to/libusb-driver.so  (for sh shells)
$ setenv LD_PRELOAD /path/to/libusb-driver.so  (for csh shells)
$ impact

To use the device as ordinary user, put the following line in a new
file in /etc/udev/rules.d/ and restart udev:
ACTION=="add", BUS=="usb", SYSFS{idVendor}=="03fd", MODE="666"


If your cable does not have the ID 03fd:0008 in the output of lsusb,
the initial firmware has not been loaded (loading it changes the
product-ID from another value to 8). To load the firmware follow
these steps:

1. If you have no /etc/udev/rules.d/xusbdfwu.rules file, copy it from
   /path/to/ISE/bin/lin/xusbdfwu.rules to /etc/udev/rules.d/xusbdfwu.rules

2. Install the package containing /sbin/fxload from your linux distribution.
   It is usually called "fxload"

3. copy the file /path/to/ISE/bin/lin/xusbdfwu.hex to /usr/share/xusbdfwu.hex

4. restart udev and re-plug the cable