Preliminary User Guide, Rev. 2 USS-720
February 1999 USB Device Driver
Lucent Technologies Inc. 7-29
13
4 I/O Control Codes (continued)
4.20 IOCTL_SET_ALTSETTING
IOCTL_SET_ALTSETTING sets the alternate interface setting. Details regarding parameters and error codes
follow.
4.20.1 Parameters
lpInBuffer—Points to an buffer that contains a single byte that specifies one of the following values:
nInBufferSize—Specifies the size (in bytes) of the buffer pointed to by lpInBuffer. For this operation, this value
should be 1.
lpOutBuffer—Points to an output buffer. Not used with this operation. Set to NULL.
nOutBufferSize—Specifies the size (in bytes) of the buffer pointed to by lpOutBuffer. Not used with this operation.
Set to zero.
lpBytesReturned—Points to a DWORD that receives the actual size (in bytes) of the data stored into lpOutBuffer.
Not used with this operation.
4.20.2 Notes
None.
4.20.3 Error Codes
ERROR_INVALID_ALTERNATESETTING—The alternate interface setting passed in for this command is invalid.
ERROR_INVALID_DESCRIPTOR—Configuration descriptor is invalid and could not set the alternate interface.
Value Description
ALT_INTERFACE_0 Bulk Out pipe only.
ALT_INTERFACE_1 Bulk Out and Bulk In pipe.
ALT_INTERFACE_2 Bulk Out, Bulk In, Interrupt pipe, and 1284 register capabilities.