USBD_OPEN_DEVICE_EXT
Purpose
Opens a specific Universal Serial Bus (USB) logical device.
Syntax
int fp_ioctl (file, USBD_OPEN_DEVICE_EXT, arg, ext)Parameters
| Item | Description |
|---|---|
| file | File descriptor that is obtained when the USBD special file was opened. |
| arg | Address of an initialized DEVOPEN structure. |
| ext | Not used and must be set to zero. |
Description
The client driver uses this fp_ioctl operation
to establish a connection to a USB logical device that is identified
by the information within the DEVSELECTOR structure.
The ioctl operation is similar to the USBD_OPEN_DEVICE
ioctl operation except that a client handle is allocated
even when a USB logical device that matches the criteria that is specified
in the DEVSELECTOR structure is not available. The
USB system driver (USBD) returns the EAGAIN error
value to indicate this condition. When the EAGAIN value
is returned, the client driver must treat the device as disconnected
and wait for connection before it proceeds with device initialization.
Execution environment
This function can be called from the kernel process environment only.
Return values
| Value | Description |
|---|---|
| 0 | Success. |
| EAGAIN | No device matched the criteria. The client handle is valid but the device is treated as being in the disconnected state. |
| All other values | Failure. |