Temat: Qt USB a sprawa wieloplatforowość aplikacji ?

Może ktoś już walczył z tematem USB na wielu platformach ?
Bo ja do tej pory tylko pod windows walczyłem z tym co microsoft oferuje w Windows WDK (Winusb http://msdn.microsoft.com/en-us/library/ff540196%28VS.... )
oraz sterowniki Cypress-a. (wszystko nie w Qt)

Nowsze wersje oprogramowania mają już działać na Win, Linux i MacOS
I teraz się zastanawiam jak zorganizować projekt aby nie pisać za dużych kawałków kodu zależnie od systemu operacyjnego.

[1]Teoretycznie jest libusb
ale nie jestem przekonany do końca albo źle używałem albo na platformie windows jest to dość mało wydajne rozwiązanie bo potrzebuję przepychać dość duże ilości danych. I sterowniki które wcześniej podałem spisywały sie lepiej (mniejsze obciążenie systemu i mniejsze gubienie danych)


[2]Obsługę USB wypchnąć poza projekt QT i zapakować go w bibliotekę (.DLL .SO) i dla każdej platformy napisać oddzielny kod. Tutaj jest problem że w życiu nie widziałem Xcode , pisanie sterownika kernel linux-a też nie jest moją najmocniejszą stroną.

Proszę o uwagi.

Jak by ktoś dysponował doświadczeniem w obsłudze USB a nie chciał by się dzielić na publicznym forum to zapraszam do PW ( jestem otwarty na współpracę ) Ewentualnie przydała by mi się osoba z doświadczeniem w pisaniu aplikacji które działały by na Win, Linux i MacOS i miała by taka osoba wolne moce przerobowe.