Interfacing a USB device driver into user space?
I'm designing a custom high throughput, tightly timed USB system (read: the libusb library is not really an option).
I've already written a kernel USB device driver which interfaces to the USB core driver. When the device is plugged in, it correctly identifies and connects to the driver.
What I need now is to use the driver's functionality from user space. Ideally, I want to develop an application that can perform a few different individual routines, based on user input. How can I make this interface between kernel and user space happen?
I'm reading a char interface would be the best option, but how do I tie in the char interface with the USB device driver? The documentation on connecting a USB driver to user space is a little sparse. Are there any good examples of this? Any thoughts or input would be much appreciated!