Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Extensible Firmware Interface Specification
14-10 12/01/02 Version 1.10
EFI_USB_HC_PROTOCOL.ControlTransfer()
Summary
Submits control transfer to a target USB device.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_USB_HC_PROTOCOL_CONTROL_TRANSFER) (
IN EFI_USB_HC_PROTOCOL *This,
IN UINT8 DeviceAddress,
IN BOOLEAN IsSlowDevice,
IN UINT8 MaximumPacketLength,
IN EFI_USB_DEVICE_REQUEST *Request,
IN EFI_USB_DATA_DIRECTION TransferDirection,
IN OUT VOID *Data OPTIONAL,
IN OUT UINTN *DataLength OPTIONAL,
IN UINTN TimeOut,
OUT UINT32 *TransferResult
);
Parameters
This A pointer to the EFI_USB_HC_PROTOCOL instance. Type
EFI_USB_HC_PROTOCOL is defined in Section 14.1.
DeviceAddress Represents the address of the target device on the USB, which is
assigned during USB enumeration.
IsSlowDevice Indicates whether the target device is slow device or full-speed
device.
MaximumPacketLength Indicates the maximum packet size that the default control
transfer endpoint is capable of sending or receiving.
Request A pointer to the USB device request that will be sent to the USB
device. Refer to Section 2.5.1 of EFI 1.1 USB Driver Model,
version 0.7.
TransferDirection Specifies the data direction for the transfer. There are three
values available, EfiUsbDataIn, EfiUsbDataOut and
EfiUsbNoData. Refer to Section 2.5.1 of EFI1.1 USB Driver
Model, version 0.7.
Data A pointer to the buffer of data that will be transmitted to USB
device or received from USB device.
DataLength On input, indicates the size, in bytes, of the data buffer specified
by Data. On output, indicates the amount of data actually
transferred.