|
TianoCore EDK2 master
|
Go to the source code of this file.
Data Structures | |
| struct | UHCI_QH_HW |
| struct | UHCI_TD_HW |
| struct | _UHCI_QH_SW |
| struct | _UHCI_TD_SW |
Macros | |
| #define | QH_HLINK(Pointer, Terminate) (((UINT32) ((UINTN) (Pointer)) & 0xFFFFFFF0) | 0x02 | ((Terminate) ? 0x01 : 0)) |
| #define | QH_VLINK(Pointer, Terminate) (((UINT32) ((UINTN) (Pointer)) & 0xFFFFFFF0) | ((Terminate) ? 0x01 : 0)) |
| #define | TD_LINK(Pointer, VertFirst, Terminate) |
| #define | LINK_TERMINATED(Link) (((Link) & 0x01) != 0) |
| #define | UHCI_ADDR(QhOrTd) ((VOID *) (UINTN) ((QhOrTd) & 0xFFFFFFF0)) |
Typedefs | |
| typedef struct _UHCI_TD_SW | UHCI_TD_SW |
| typedef struct _UHCI_QH_SW | UHCI_QH_SW |
Functions | |
| VOID | UhciLinkTdToQh (IN USB_HC_DEV *Uhc, IN UHCI_QH_SW *Qh, IN UHCI_TD_SW *Td) |
| VOID | UhciUnlinkTdFromQh (IN UHCI_QH_SW *Qh, IN UHCI_TD_SW *Td) |
| EFI_STATUS | UhciMapUserRequest (IN USB_HC_DEV *Uhc, IN OUT VOID *Request, OUT UINT8 **MappedAddr, OUT VOID **Map) |
| EFI_STATUS | UhciMapUserData (IN USB_HC_DEV *Uhc, IN EFI_USB_DATA_DIRECTION Direction, IN VOID *Data, IN OUT UINTN *Len, OUT UINT8 *PktId, OUT UINT8 **MappedAddr, OUT VOID **Map) |
| VOID | UhciDestoryTds (IN USB_HC_DEV *Uhc, IN UHCI_TD_SW *FirstTd) |
| UHCI_QH_SW * | UhciCreateQh (IN USB_HC_DEV *Uhc, IN UINTN Interval) |
| UHCI_TD_SW * | UhciCreateCtrlTds (IN USB_HC_DEV *Uhc, IN UINT8 DeviceAddr, IN UINT8 DataPktId, IN UINT8 *Request, IN UINT8 *RequestPhy, IN UINT8 *Data, IN UINT8 *DataPhy, IN UINTN DataLen, IN UINT8 MaxPacket, IN BOOLEAN IsLow) |
| UHCI_TD_SW * | UhciCreateBulkOrIntTds (IN USB_HC_DEV *Uhc, IN UINT8 DevAddr, IN UINT8 EndPoint, IN UINT8 PktId, IN UINT8 *Data, IN UINT8 *DataPhy, IN UINTN DataLen, IN OUT UINT8 *DataToggle, IN UINT8 MaxPacket, IN BOOLEAN IsLow) |
The definition for UHCI register operation routines.
Copyright (c) 2007, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file UhciQueue.h.
| #define LINK_TERMINATED | ( | Link | ) | (((Link) & 0x01) != 0) |
Definition at line 33 of file UhciQueue.h.
| #define QH_HLINK | ( | Pointer, | |
| Terminate | |||
| ) | (((UINT32) ((UINTN) (Pointer)) & 0xFFFFFFF0) | 0x02 | ((Terminate) ? 0x01 : 0)) |
Definition at line 23 of file UhciQueue.h.
| #define QH_VLINK | ( | Pointer, | |
| Terminate | |||
| ) | (((UINT32) ((UINTN) (Pointer)) & 0xFFFFFFF0) | ((Terminate) ? 0x01 : 0)) |
Definition at line 26 of file UhciQueue.h.
| #define TD_LINK | ( | Pointer, | |
| VertFirst, | |||
| Terminate | |||
| ) |
Definition at line 29 of file UhciQueue.h.
Definition at line 35 of file UhciQueue.h.
| typedef struct _UHCI_QH_SW UHCI_QH_SW |
Definition at line 74 of file UhciQueue.h.
| typedef struct _UHCI_TD_SW UHCI_TD_SW |
Definition at line 73 of file UhciQueue.h.
| UHCI_TD_SW * UhciCreateBulkOrIntTds | ( | IN USB_HC_DEV * | Uhc, |
| IN UINT8 | DevAddr, | ||
| IN UINT8 | EndPoint, | ||
| IN UINT8 | PktId, | ||
| IN UINT8 * | Data, | ||
| IN UINT8 * | DataPhy, | ||
| IN UINTN | DataLen, | ||
| IN OUT UINT8 * | DataToggle, | ||
| IN UINT8 | MaxPacket, | ||
| IN BOOLEAN | IsLow | ||
| ) |
Create Tds list for Bulk/Interrupt Transfer.
| Uhc | USB_HC_DEV. |
| DevAddr | Address of Device. |
| EndPoint | Endpoint Number. |
| PktId | Packet Identification of Data Tds. |
| Data | A pointer to cpu memory address of user data buffer to transfer. |
| DataPhy | A pointer to pci memory address of user data buffer to transfer. |
| DataLen | Length of user data to transfer. |
| DataToggle | Data Toggle Pointer. |
| MaxPacket | Maximum packet size for Bulk/Interrupt transfer. |
| IsLow | Is Low Speed Device. |
Definition at line 610 of file UhciQueue.c.
| UHCI_TD_SW * UhciCreateCtrlTds | ( | IN USB_HC_DEV * | Uhc, |
| IN UINT8 | DeviceAddr, | ||
| IN UINT8 | DataPktId, | ||
| IN UINT8 * | Request, | ||
| IN UINT8 * | RequestPhy, | ||
| IN UINT8 * | Data, | ||
| IN UINT8 * | DataPhy, | ||
| IN UINTN | DataLen, | ||
| IN UINT8 | MaxPacket, | ||
| IN BOOLEAN | IsLow | ||
| ) |
Create Tds list for Control Transfer.
| Uhc | The UHCI device. |
| DeviceAddr | The device address. |
| DataPktId | Packet Identification of Data Tds. |
| Request | A pointer to cpu memory address of request structure buffer to transfer. |
| RequestPhy | A pointer to pci memory address of request structure buffer to transfer. |
| Data | A pointer to cpu memory address of user data buffer to transfer. |
| DataPhy | A pointer to pci memory address of user data buffer to transfer. |
| DataLen | Length of user data to transfer. |
| MaxPacket | Maximum packet size for control transfer. |
| IsLow | Full speed or low speed. |
Definition at line 475 of file UhciQueue.c.
| UHCI_QH_SW * UhciCreateQh | ( | IN USB_HC_DEV * | Uhc, |
| IN UINTN | Interval | ||
| ) |
Create an initialize a new queue head.
| Uhc | The UHCI device. |
| Interval | The polling interval for the queue. |
Definition at line 249 of file UhciQueue.c.
| VOID UhciDestoryTds | ( | IN USB_HC_DEV * | Uhc, |
| IN UHCI_TD_SW * | FirstTd | ||
| ) |
Delete a list of TDs.
| Uhc | The UHCI device. |
| FirstTd | TD link list head. |
Definition at line 222 of file UhciQueue.c.
| VOID UhciLinkTdToQh | ( | IN USB_HC_DEV * | Uhc, |
| IN UHCI_QH_SW * | Qh, | ||
| IN UHCI_TD_SW * | Td | ||
| ) |
Link the TD To QH.
| Uhc | The UHCI device. |
| Qh | The queue head for the TD to link to. |
| Td | The TD to link. |
Definition at line 152 of file UhciQueue.c.
| EFI_STATUS UhciMapUserData | ( | IN USB_HC_DEV * | Uhc, |
| IN EFI_USB_DATA_DIRECTION | Direction, | ||
| IN VOID * | Data, | ||
| IN OUT UINTN * | Len, | ||
| OUT UINT8 * | PktId, | ||
| OUT UINT8 ** | MappedAddr, | ||
| OUT VOID ** | Map | ||
| ) |
Map address of user data buffer.
| Uhc | The UHCI device. |
| Direction | Direction of the data transfer. |
| Data | The user data buffer. |
| Len | Length of the user data. |
| PktId | Packet identificaion. |
| MappedAddr | Mapped address to return. |
| Map | Identificaion of this mapping to return. |
Definition at line 69 of file UhciQueue.c.
| EFI_STATUS UhciMapUserRequest | ( | IN USB_HC_DEV * | Uhc, |
| IN OUT VOID * | Request, | ||
| OUT UINT8 ** | MappedAddr, | ||
| OUT VOID ** | Map | ||
| ) |
Map address of request structure buffer.
| Uhc | The UHCI device. |
| Request | The user request buffer. |
| MappedAddr | Mapped address of request. |
| Map | Identificaion of this mapping to return. |
Definition at line 25 of file UhciQueue.c.
| VOID UhciUnlinkTdFromQh | ( | IN UHCI_QH_SW * | Qh, |
| IN UHCI_TD_SW * | Td | ||
| ) |
Unlink TD from the QH.
| Qh | The queue head to unlink from. |
| Td | The TD to unlink. |
Unlink TD from the QH.
| Qh | The queue head to unlink from. |
| Td | The TD to unlink. |
Definition at line 176 of file UhciQueue.c.