beautypg.com

Efi_usb_hc_protocol.asyncisochronoustransfer(), Asyncisochronoustransfer(), Func – Intel Extensible Firmware Interface User Manual

Page 563

background image

Protocols

— USB Support

Version 1.10

12/01/02

14-23

EFI_USB_HC_PROTOCOL.AsyncIsochronousTransfer()

Summary

Submits nonblocking isochronous transfer to an isochronous endpoint of a USB device.

Prototype

typedef
EFI_STATUS
(EFIAPI * EFI_USB_HC_PROTOCOL_ASYNC_ISOCHRONOUS_TRANSFER) (
IN EFI_USB_HC_PROTOCOL

*This,

IN UINT8

DeviceAddress,

IN UINT8

EndPointAddress,

IN UINT8

MaximumPacketLength,

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_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 zero). It is the
caller’s responsibility to make sure that the

EndPointAddress

represents an isochronous endpoint.

MaximumPacketLength

Indicates the maximum packet size the target endpoint is capable
of sending or receiving. For isochronous endpoints, this value is
used to reserve the bus time in the schedule, required for the per-
frame data payloads. The pipe may, on an ongoing basis,
actually use less bandwidth than that reserved.

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.