History:
The first step was to find out how the cable worked, then write a Linux driver. I found out how the cable worked, but failed to write a working driver. Yay, yay, I should have read the docs first :) As I had little time and was not really in the mood for such things, I handed over the development of the driver to Romain, who finally wrote it in another way.
In the same time, Romain developed the Windows drivers, which was kind of a pain. He got nice, working drivers on the most popular Windows versions at that time. And a good knowledge of the SilervLink.
Then came the Mac OS X version of TiLP, which of course needed yet another driver for the SilverLink. This was in fact quite easy to do, as it could be done entirely in userland, which is far easiest to write and debug.
To be honest, the same could be achieved under Linux using the libusb, so I wrote a libusb support and integrated it to the libticables.
We decided to implement a probing & fallback support into the libticables, so that you could use either the libusb userland driver or the kernel driver under Linux.
At that time, drivers are nearly 100% functionnal. However, there are some problems sometimes, such as lock-ups. These problems were encountered on the 3 platforms we support. Basically, a USB read can return sucessfully with no data, this is one problem, the other being that we sometimes ended up locking the cable.
These problems are now fixed.
So far, we support 7 platforms with these drivers :