Developing Windows drivers for USB function controllers
This section describes support in the Windows operating system, for developing a Universal Serial Bus (USB) 3.0 function controller driver that communicates with the Microsoft-provided USB function controller extension (UFX).
Development tools and Microsoft-provided binaries
The Windows Driver Kit (WDK) contains resources that are required for driver development, such as headers, libraries, tools, and samples.
To write a function controller driver, you need:
To send requests from user mode, you need:
To send requests from your USB class driver, you need:
Architecture of UFX
Familiarize yourself with the Microsoft-provided USB driver stack:USB device-side drivers in Windows
Familiarize yourself with UFX objects and handles
UFX extends the WDF object functionality to define its own USB-specific UCX objects. For more details on WDF objects, see Introduction to Framework Objects.
For queuing requests, UFX uses USB-specific objects. For more information, UFX objects and handles used by a USB function client driver.
Writing a function controller client driver
Understand the behavior of UFX, how it interacts with the client driver, and the features that the client driver is expected to implement.
Programming reference sections
We'd love to hear your thoughts. Choose the type you'd like to provide:
Our feedback system is built on GitHub Issues. Read more on our blog.