10#ifndef _EFI_UHCI_SCHED_H_
11#define _EFI_UHCI_SCHED_H_
13#define UHCI_ASYNC_INT_SIGNATURE SIGNATURE_32 ('u', 'h', 'c', 'a')
20#define USB_ERR_FAIL_MASK (EFI_USB_ERR_STALL | EFI_USB_ERR_BUFFER | \
21 EFI_USB_ERR_BABBLE | EFI_USB_ERR_CRC | \
22 EFI_USB_ERR_TIMEOUT | EFI_USB_ERR_BITSTUFF | \
71#define UHCI_ASYNC_INT_FROM_LINK(a) \
72 CR (a, UHCI_ASYNC_REQUEST, Link, UHCI_ASYNC_INT_SIGNATURE)
EFI_STATUS(EFIAPI * EFI_ASYNC_USB_TRANSFER_CALLBACK)(IN VOID *Data, IN UINTN DataLength, IN VOID *Context, IN UINT32 Status)
EFI_STATUS UhciInitFrameList(IN USB_HC_DEV *Uhc)
EFI_STATUS UhciExecuteTransfer(IN USB_HC_DEV *Uhc, IN UHCI_QH_SW *Qh, IN UHCI_TD_SW *Td, IN UINTN TimeOut, IN BOOLEAN IsLow, OUT UHCI_QH_RESULT *QhResult)
VOID UhciFreeAllAsyncReq(IN USB_HC_DEV *Uhc)
VOID EFIAPI UhciMonitorAsyncReqList(IN EFI_EVENT Event, IN VOID *Context)
VOID UhciLinkQhToFrameList(USB_HC_DEV *Uhc, UHCI_QH_SW *Qh)
VOID UhciDestoryFrameList(IN USB_HC_DEV *Uhc)
EFI_STATUS UhciRemoveAsyncReq(IN USB_HC_DEV *Uhc, IN UINT8 DevAddr, IN UINT8 EndPoint, OUT UINT8 *Toggle)
UINTN UhciConvertPollRate(IN UINTN Interval)
EFI_STATUS UhciCreateAsyncReq(IN USB_HC_DEV *Uhc, IN UHCI_QH_SW *Qh, IN UHCI_TD_SW *FirstTd, IN UINT8 DevAddr, IN UINT8 EndPoint, IN UINTN DataLen, IN UINTN Interval, IN UINT8 *Data, IN EFI_ASYNC_USB_TRANSFER_CALLBACK Callback, IN VOID *Context, IN BOOLEAN IsLow)
VOID UhciUnlinkQhFromFrameList(USB_HC_DEV *Uhc, UHCI_QH_SW *Qh)