Where can I find information about writing a driver?
The below book might help you get up to speed on USB.
http://www.lvr.com/usbc.htm