This section describes a template USB device driver that uses the USBA 2.0 framework for the Oracle Solaris environment. This driver demonstrates many of the features discussed in this chapter. This template or skeleton driver is named usbskel.
The usbskel driver is a template that you can use to start your own USB device driver. The usbskel driver demonstrates the following features:
Reading the raw configuration data of a device. Every USB device needs to be able to report device raw configuration data.
Managing pipes. The usbskel driver opens an interrupt pipe to show how to manage pipes.
Polling. Comments in the usbskel driver discuss how to do polling.
USB version management and registration.
Accommodations for USB hotplugging.
Accommodations for Oracle Solaris suspend and resume.
Accommodations for power management.
Use of USB callbacks.