Efi_usb_io_protocol.usbasyncisochronoustransfer(), Usbasyncisochronoustransfer(), Func – Intel Extensible Firmware Interface User Manual
Page 592

Extensible Firmware Interface Specification
14-52 12/01/02
Version
1.10
EFI_USB_IO_PROTOCOL.UsbAsyncIsochronousTransfer()
Summary
This function is used to manage a USB device with an isochronous transfer pipe. An asynchronous
Isochronous transfer is a nonblocking USB isochronous transfer.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_USB_IO_ASYNC_ISOCHRONOUS_TRANSFER) (
IN EFI_USB_IO_PROTOCOL
*This,
IN UINT8
DeviceEndpoint,
IN OUT VOID
*Data,
IN UINTN
DataLength,
IN EFI_ASYNC_USB_TRANSFER_CALLBACK
IsochronousCallBack,
IN VOID
*Context OPTIONAL
);
Parameters
This
A pointer to the
instance. Type
EFI_USB_IO_PROTOCOL
is defined in Section 14.2.5.
DeviceEndpoint
The destination USB device endpoint to which the device request
is being sent.
DeviceEndpoint
must be between 0x01 and
0x0F or between 0x81 and 0x8F, otherwise
EFI_INVALID_PARAMETER
is returned. If the endpoint is not
an ISOCHRONOUS endpoint,
EFI_INVALID_PARAMETER
is
returned. The MSB of this parameter indicates the endpoint
direction. The number “1” stands for an IN endpoint, and “0”
stands for an OUT endpoint.
Data
A pointer to the buffer of data that will be transmitted to USB
device or received from USB device.
DataLength
Specifies the length, in bytes, of the data to be sent to or received
from the USB device.
Context
function. This
is an optional parameter and may be
NULL
.
IsochronousCallback
The
IsochronousCallback()
function. This function is
called if the requested isochronous transfer is completed. See the
“Related Definitions” section of the
function description.