mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-24 14:14:31 +02:00
MdePkg: Update Usb2Hc Isochronous related functions' description
IsochronousTransfer/AsyncIsochronousTransfer() interface descriptions get updated to follow UEFI2.5 spec. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Feng Tian <feng.tian@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17384 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
ab8686b892
commit
2946ffb6ed
@ -4,7 +4,7 @@
|
||||
running in the EFI boot services environment, to perform data transactions over
|
||||
a USB bus. In addition, it provides an abstraction for the root hub of the USB bus.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
@ -413,11 +413,42 @@ EFI_STATUS
|
||||
/**
|
||||
Submits isochronous transfer to an isochronous endpoint of a USB device.
|
||||
|
||||
This function is used to submit isochronous transfer to a target endpoint of a USB device.
|
||||
The target endpoint is specified by DeviceAddressand EndpointAddress. Isochronous transfers are
|
||||
used when working with isochronous date. It provides periodic, continuous communication between
|
||||
the host and a device. Isochronous transfers can beused only by full-speed, high-speed, and
|
||||
super-speed devices.
|
||||
|
||||
High-speed isochronous transfers can be performed using multiple data buffers. The number of
|
||||
buffers that are actually prepared for the transfer is specified by DataBuffersNumber. For
|
||||
full-speed isochronous transfers this value is ignored.
|
||||
|
||||
Data represents a list of pointers to the data buffers. For full-speed isochronous transfers
|
||||
only the data pointed by Data[0]shall be used. For high-speed isochronous transfers and for
|
||||
the split transactions depending on DataLengththere several data buffers canbe used. For the
|
||||
high-speed isochronous transfers the total number of buffers must not exceed EFI_USB_MAX_ISO_BUFFER_NUM.
|
||||
|
||||
For split transactions performed on full-speed device by high-speed host controller the total
|
||||
number of buffers is limited to EFI_USB_MAX_ISO_BUFFER_NUM1.
|
||||
If the isochronous transfer is successful, then EFI_SUCCESSis returned. The isochronous transfer
|
||||
is designed to be completed within one USB frame time, if it cannot be completed, EFI_TIMEOUT
|
||||
is returned. If an error other than timeout occurs during the USB transfer, then EFI_DEVICE_ERROR
|
||||
is returned and the detailed status code will be returned in TransferResult.
|
||||
|
||||
EFI_INVALID_PARAMETERis returned if one of the following conditionsis satisfied:
|
||||
- Data is NULL.
|
||||
- DataLength is 0.
|
||||
- DeviceSpeed is not one of the supported values listed above.
|
||||
- MaximumPacketLength is invalid. MaximumPacketLength must be 1023 or less for full-speed devices,
|
||||
and 1024 or less for high-speed and super-speed devices.
|
||||
- TransferResult is NULL.
|
||||
|
||||
@param This A pointer to the EFI_USB2_HC_PROTOCOL instance.
|
||||
@param DeviceAddress Represents the address of the target device on the USB.
|
||||
@param EndPointAddress The combination of an endpoint number and an endpoint direction of the
|
||||
target USB device.
|
||||
@param DeviceSpeed Indicates device speed.
|
||||
@param DeviceSpeed Indicates device speed. The supported values are EFI_USB_SPEED_FULL,
|
||||
EFI_USB_SPEED_HIGH, or EFI_USB_SPEED_SUPER.
|
||||
@param MaximumPacketLength Indicates the maximum packet size the target endpoint is capable of
|
||||
sending or receiving.
|
||||
@param DataBuffersNumber Number of data buffers prepared for the transfer.
|
||||
@ -454,11 +485,43 @@ EFI_STATUS
|
||||
/**
|
||||
Submits nonblocking isochronous transfer to an isochronous endpoint of a USB device.
|
||||
|
||||
This is an asynchronous type of USB isochronous transfer. If the caller submits a USB
|
||||
isochronous transfer request through this function, this function will return immediately.
|
||||
|
||||
When the isochronous transfer completes, the IsochronousCallbackfunction will be triggered,
|
||||
the caller can know the transfer results. If the transfer is successful, the caller can get
|
||||
the data received or sent in this callback function.
|
||||
|
||||
The target endpoint is specified by DeviceAddressand EndpointAddress. Isochronous transfers
|
||||
are used when working with isochronous date. It provides periodic, continuous communication
|
||||
between the host and a device. Isochronous transfers can be used only by full-speed, high-speed,
|
||||
and super-speed devices.
|
||||
|
||||
High-speed isochronous transfers can be performed using multiple data buffers. The number of
|
||||
buffers that are actually prepared for the transfer is specified by DataBuffersNumber. For
|
||||
full-speed isochronous transfers this value is ignored.
|
||||
|
||||
Data represents a list of pointers to the data buffers. For full-speed isochronous transfers
|
||||
only the data pointed by Data[0] shall be used. For high-speed isochronous transfers and for
|
||||
the split transactions depending on DataLength there several data buffers can be used. For
|
||||
the high-speed isochronous transfers the total number of buffers must not exceed EFI_USB_MAX_ISO_BUFFER_NUM.
|
||||
|
||||
For split transactions performed on full-speed device by high-speed host controller the total
|
||||
number of buffers is limited to EFI_USB_MAX_ISO_BUFFER_NUM1.
|
||||
|
||||
EFI_INVALID_PARAMETER is returned if one of the following conditionsis satisfied:
|
||||
- Data is NULL.
|
||||
- DataLength is 0.
|
||||
- DeviceSpeed is not one of the supported values listed above.
|
||||
- MaximumPacketLength is invalid. MaximumPacketLength must be 1023 or less for full-speed
|
||||
devices and 1024 or less for high-speed and super-speed devices.
|
||||
|
||||
@param This A pointer to the EFI_USB2_HC_PROTOCOL instance.
|
||||
@param DeviceAddress Represents the address of the target device on the USB.
|
||||
@param EndPointAddress The combination of an endpoint number and an endpoint direction of the
|
||||
target USB device.
|
||||
@param DeviceSpeed Indicates device speed.
|
||||
@param DeviceSpeed Indicates device speed. The supported values are EFI_USB_SPEED_FULL,
|
||||
EFI_USB_SPEED_HIGH, or EFI_USB_SPEED_SUPER.
|
||||
@param MaximumPacketLength Indicates the maximum packet size the target endpoint is capable of
|
||||
sending or receiving.
|
||||
@param DataBuffersNumber Number of data buffers prepared for the transfer.
|
||||
|
Loading…
x
Reference in New Issue
Block a user