7-12 Lucent Technologies Inc.
USS-720 Preliminary User Guide, Rev. 2
USB Device Driver February 1999
13
4 I/O Control Codes (continued)
4.3 IOCTL_1284_ ECP_SET_CHANNEL
IOCTL_1284_ ECP_SET_CHANNEL sets the ECP channel on the peripheral for reads and writes. Details
regarding parameters and error codes follow.
4.3.1 Parameters
lpInBuffer—Points to a buffer that contains a single byte which specifies the ECP channel to be set.
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.3.2 Notes
Requires that the register-based mode be successfully set to ECP_REGISTER_MODE or
ECP_RLE_REGISTER_MODE (see
USS-720 USB-to-
IEEE
1284 Bridge
Preliminary Data Sheet, “Register-Based
Operation” and Section 4.4, IOCTL_1284_SET_MODE, of this document).
4.3.3 Error Codes
ERROR_INVALID_ALTERNATESETTING—This command is only supported in ALT_INTERFACE_2 (see
Section 4.9 of this document).
STATUS_IO_DEVICE_ERROR—Negotiation failed.