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

Page 592

Advertising
background image

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

EFI_USB_IO_PROTOCOL

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

Data passed to the

IsochronousCallback()

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

UsbAsyncInterruptTransfer()

function description.

Advertising