Device-specific data. More...
Public Attributes | |
MUTEX | PipeListLock |
rd | OpenedPipeList |
rd | ClosedPipeList |
dd | NumPipes |
dd | Hub |
dd | TTHub |
db | Port |
db | TTPort |
db | DeviceDescrSize |
db | Speed |
dd | Timer |
dd | NumInterfaces |
dd | ConfigDataSize |
dd | Interfaces |
Device-specific data.
rd usb_device_data::ClosedPipeList |
List of all opened pipes for the device. Used when the device is disconnected, so all pipes should be closed.
dd usb_device_data::ConfigDataSize |
Number of interfaces.
db usb_device_data::DeviceDescrSize |
Port on the TTHub, zero-based.
dd usb_device_data::Hub |
Number of not-yet-closed pipes.
dd usb_device_data::Interfaces |
Total size of data associated with the configuration descriptor (including the configuration descriptor itself).
dd usb_device_data::NumInterfaces |
Handle of timer that handles request timeout.
dd usb_device_data::NumPipes |
List of all closed, but still valid pipes for the device. A pipe closed with USBClosePipe is just deallocated, but a pipe closed due to disconnect must remain valid until driver-provided disconnect handler returns; this list links all such pipes to deallocate them after disconnect processing.
rd usb_device_data::OpenedPipeList |
Lock guarding OpenedPipeList. Must be the first item of the structure, the code passes pointer to usb_device_data as is to mutex_lock/unlock.
MUTEX usb_device_data::PipeListLock |
db usb_device_data::Port |
Pointer to usb_hub for (the) hub with Transaction Translator for the device, NULL if the device operates in the same speed as the controller.
db usb_device_data::Speed |
Size of device descriptor.
dd usb_device_data::Timer |
Device speed, one of USB_SPEED_*.
dd usb_device_data::TTHub |
NULL if connected to the root hub, pointer to usb_hub otherwise.
db usb_device_data::TTPort |
Port on the hub, zero-based.