Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Protocols USB Support
Version 1.10 12/01/02 14-13
EFI_USB_HC_PROTOCOL.BulkTransfer()
Summary
Submits bulk transfer to a bulk endpoint of a USB device.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_USB_HC_PROTOCOL_BULK_TRANSFER) (
IN EFI_USB_HC_PROTOCOL *This,
IN UINT8 DeviceAddress,
IN UINT8 EndPointAddress,
IN UINT8 MaximumPacketLength,
IN OUT VOID *Data,
IN OUT UINTN *DataLength,
IN OUT UINT8 *DataToggle,
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.
EndPointAddress The combination of an endpoint number and an endpoint
direction of the target USB device. Each endpoint address
supports data transfer in one direction except the control
endpoint (whose default endpoint address is 0). It is the callers
responsibility to make sure that the EndPointAddress
represents a bulk endpoint.
MaximumPacketLength Indicates the maximum packet size the target endpoint is capable
of sending or receiving.
Data A pointer to the buffer of data that will be transmitted to USB
device or received from USB device.
DataLength When input, indicates the size, in bytes, of the data buffer
specified by Data. When output, indicates the actually
transferred data size.
DataToggle A pointer to the data toggle value. On input, it indicates the
initial data toggle value the bulk transfer should adopt; on
output, it is updated to indicate the data toggle value of the
subsequent bulk transfer.