/** @file\r
Private Header file for Usb Host Controller PEIM\r
\r
-Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>\r
- \r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions\r
-of the BSD License which accompanies this distribution. The\r
-full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
+Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>\r
\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
\r
/**\r
Initialize the schedule data structure such as frame list.\r
- \r
+\r
@param Ehc The EHCI device to init schedule data for.\r
\r
@retval EFI_OUT_OF_RESOURCES Failed to allocate resource to init schedule data.\r
\r
/**\r
Free the schedule data. It may be partially initialized.\r
- \r
+\r
@param Ehc The EHCI device.\r
\r
**/\r
due to its interfaces. This simplifies the AsynList\r
management: A reclamation header is always linked to\r
the AsyncListAddr, the only active QH is appended to it.\r
- \r
+\r
@param Ehc The EHCI device.\r
@param Qh The queue head to link.\r
\r
/**\r
Unlink a queue head from the asynchronous schedule list.\r
Need to synchronize with hardware.\r
- \r
- @param Ehc The EHCI device.\r
- @param Qh The queue head to unlink.\r
-\r
-**/\r
-VOID\r
-EhcUnlinkQhFromAsync (\r
- IN PEI_USB2_HC_DEV *Ehc,\r
- IN PEI_EHC_QH *Qh\r
- )\r
-;\r
\r
-/**\r
- Link a queue head for interrupt transfer to the periodic\r
- schedule frame list. This code is very much the same as\r
- that in UHCI.\r
- \r
- @param Ehc The EHCI device.\r
- @param Qh The queue head to link.\r
-\r
-**/\r
-VOID\r
-EhcLinkQhToPeriod (\r
- IN PEI_USB2_HC_DEV *Ehc,\r
- IN PEI_EHC_QH *Qh\r
- )\r
-;\r
-\r
-/**\r
- Unlink an interrupt queue head from the periodic \r
- schedule frame list.\r
- \r
@param Ehc The EHCI device.\r
@param Qh The queue head to unlink.\r
\r
**/\r
VOID\r
-EhcUnlinkQhFromPeriod (\r
+EhcUnlinkQhFromAsync (\r
IN PEI_USB2_HC_DEV *Ehc,\r
IN PEI_EHC_QH *Qh\r
)\r
\r
/**\r
Execute the transfer by polling the URB. This is a synchronous operation.\r
- \r
+\r
@param Ehc The EHCI device.\r
@param Urb The URB to execute.\r
@param TimeOut The time to wait before abort, in millisecond.\r
)\r
;\r
\r
-/**\r
- Delete a single asynchronous interrupt transfer for\r
- the device and endpoint.\r
- \r
- @param Ehc The EHCI device.\r
- @param DevAddr The address of the target device.\r
- @param EpNum The endpoint of the target.\r
- @param DataToggle Return the next data toggle to use.\r
-\r
- @retval EFI_NOT_FOUND No transfer for the device is found.\r
- @retval EFI_SUCCESS An asynchronous transfer is removed.\r
-\r
-**/\r
-EFI_STATUS\r
-EhciDelAsyncIntTransfer (\r
- IN PEI_USB2_HC_DEV *Ehc,\r
- IN UINT8 DevAddr,\r
- IN UINT8 EpNum, \r
- OUT UINT8 *DataToggle\r
- )\r
-;\r
-\r
-/**\r
- Remove all the asynchronous interrutp transfers.\r
- \r
- @param Ehc The EHCI device.\r
-\r
-**/\r
-VOID\r
-EhciDelAllAsyncIntTransfers (\r
- IN PEI_USB2_HC_DEV *Ehc\r
- )\r
-;\r
-\r
-/**\r
- Remove all the asynchronous interrutp transfers.\r
- \r
- @param Event Interrupt event.\r
- @param Context Pointer to PEI_USB2_HC_DEV.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-EhcMoniteAsyncRequests (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
- )\r
-;\r
-\r
#endif\r