| LPCOpen Platform v1.03 LPCOpen Platform for NXP LPC Microcontrollers

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
Open Host Controller Interface Driver
Host Controller Drivers

## Detailed Description

## Data Structures
struct | st_HC_HCCA
struct | st_HC_ED
struct | PHCD_EndpointDescriptor
struct | st_HC_GTD
struct | PHCD_GeneralTransferDescriptor
struct | st_HCD_IsoTransferDescriptor
struct | OHCI_HOST_DATA_T

## Macros
#define | MAX_ED HCD_MAX_ENDPOINT
#define | MAX_GTD (MAX_ED + 3)
#define | MAX_STATIC_ED 3 /* Serve as list head, fixed, not configurable */
#define | MAX_ITD 0
#define | CONTROL_BULK_SERVICE_RATIO 3 /* Control Bulk transfer ratio 0 = 1:1 - 1 = 2:1 - 2 = 3:1 - 3 = 4:1 */
#define | INTERRUPT_ROUTING 0 /* Host interrupt routing 0 = IRQ - 1 = SMI */
#define | REMOTE_WAKEUP_CONNECTED NO /* Remote wakeup connected */
#define | REMOTE_WAKEUP_ENABLE NO /* Remote wakeup enable */
#define | SCHEDULING_OVRERRUN_INTERRUPT NO
#define | SOF_INTERRUPT NO
#define | RESUME_DETECT_INTERRUPT NO
#define | UNRECOVERABLE_ERROR_INTERRUPT NO
#define | FRAMENUMBER_OVERFLOW_INTERRUPT NO
#define | OWNERSHIP_CHANGE_INTERRUPT NO
#define | FRAME_INTERVAL 0x2EDF /* Reset default value */
#define | HC_FMINTERVAL_DEFAULT ((((6 * (FRAME_INTERVAL - 210)) / 7) << 16) | FRAME_INTERVAL)
#define | PERIODIC_START 0x00002A27UL /* 10% off from FRAME_INTERVAL */
#define | PORT_POWER_SWITCHING NO
#define | PER_PORT_POWER_SWITCHING NO
#define | PER_PORT_OVER_CURRENT_REPORT NO
#define | OVER_CURRENT_PROTECTION NO
#define | INTERRUPT_1ms_LIST_HEAD 0
#define | INTERRUPT_2ms_LIST_HEAD 1
#define | INTERRUPT_4ms_LIST_HEAD 3
#define | INTERRUPT_8ms_LIST_HEAD 7
#define | INTERRUPT_16ms_LIST_HEAD 15
#define | INTERRUPT_32ms_LIST_HEAD 31
#define | ISO_LIST_HEAD (MAX_STATIC_ED - 3)
#define | CONTROL_LIST_HEAD (MAX_STATIC_ED - 2)
#define | BULK_LIST_HEAD (MAX_STATIC_ED - 1)
#define | TD_MAX_XFER_LENGTH 0x2000
#define | TD_NoInterruptOnComplete (7)
#define | HC_REVISION 0x000000FFUL
#define | HC_FM_REMAIN 0x00003FFFUL /* Frame remaining */
#define | HC_FM_NUMBER 0x0000FFFFUL /* Frame Number */
#define | HC_CONTROL_ControlBulkServiceRatio 0x00000003UL /* Control/Bulk ratio */
#define | HC_CONTROL_PeriodListEnable 0x00000004UL /* Periodic List Enable */
#define | HC_CONTROL_IsochronousEnable 0x00000008UL /* Isochronous Enable */
#define | HC_CONTROL_ControlListEnable 0x00000010UL /* Control List Enable */
#define | HC_CONTROL_BulkListEnable 0x00000020UL /* Bulk List Enable */
#define | HC_CONTROL_HostControllerFunctionalState 0x000000C0UL /* Host Controller Functional State */
#define | HC_CONTROL_InterruptRouting 0x00000100UL /* Interrupt Routing */
#define | HC_CONTROL_RemoteWakeupConnected 0x00000200UL /* Remote Wakeup Connected */
#define | HC_CONTROL_RemoteWakeupEnable 0x00000400UL /* Remote Wakeup Enable */
#define | HC_HOST_RESET 0x00000000UL /* Reset state */
#define | HC_HOST_RESUME 0X00000001UL /* Resume state */
#define | HC_HOST_OPERATIONAL 0x00000002UL /* Operational state */
#define | HC_HOST_SUSPEND 0x00000003UL /* Suspend state */
#define | HC_COMMAND_STATUS_HostControllerReset 0x00000001UL /* Host Controller Reset */
#define | HC_COMMAND_STATUS_ControlListFilled 0x00000002UL /* Control List Filled */
#define | HC_COMMAND_STATUS_BulkListFilled 0x00000004UL /* Bulk List Filled */
#define | HC_INTERRUPT_SchedulingOverrun 0x00000001UL /* Scheduling Overrun */
#define | HC_INTERRUPT_WritebackDoneHead 0x00000002UL /* Writeback DoneHead */
#define | HC_INTERRUPT_StartofFrame 0x00000004UL /* Start of Frame */
#define | HC_INTERRUPT_ResumeDetected 0x00000008UL /* Resume Detect */
#define | HC_INTERRUPT_UnrecoverableError 0x00000010UL /* Unrecoverable error */
#define | HC_INTERRUPT_FrameNumberOverflow 0x00000020UL /* Frame Number Overflow */
#define | HC_INTERRUPT_RootHubStatusChange 0x00000040UL /* Root Hub Status Change */
#define | HC_INTERRUPT_OwnershipChange 0x40000000UL /* Ownership Change */
#define | HC_INTERRUPT_MasterInterruptEnable 0x80000000UL /* Master Interrupt Enable */
#define | HC_INTERRUPT_ALL 0xC000007FUL /* All interrupts */
#define | HC_RH_DESCRIPTORA_NumberDownstreamPorts 0x000000FFUL /* Number of downstream ports */
#define | HC_RH_DESCRIPTORA_PowerSwitchingMode 0x00000100UL /* Power Switching Mode */
#define | HC_RH_DESCRIPTORA_NoPowerSwitching 0x00000200UL /* No Power Switching */
#define | HC_RH_DESCRIPTORA_OverCurrentProtectionMode 0x00000800UL /* OverCurrent Protection Mode */
#define | HC_RH_DESCRIPTORA_NoOverCurrentProtection 0x00001000UL /* No OverCurrent Protection */
#define | HC_RH_DESCRIPTORA_PowerOnToPowerGoodTime 0xFF000000UL /* Power On To Power Good Time */
#define | HC_RH_DESCRIPTORB_PortPowerControlMask 0xFFFF0000UL /* Port Power Control Mask */
#define | HC_RH_DESCRIPTORB_DeviceRemovable 0x0000FFFFUL /* Device Removable */
#define | HC_RH_STATUS_LocalPowerStatus 0x00000001UL /* R: Local Power Status - W: Clear Global Power */
#define | HC_RH_STATUS_LocalPowerStatusChange 0x00010000UL /* R: Local Power Status Change - W: Set Global Power */
#define | HC_RH_STATUS_DeviceRemoteWakeupEnable 0x00008000UL /* W: Set Remote Wakeup Enable */
#define | HC_RH_PORT_STATUS_CurrentConnectStatus 0x00000001UL /* R: Current Connect Status - W: Clear Port Enable */
#define | HC_RH_PORT_STATUS_PowerEnableStatus 0x00000002UL /* R: Port Enable Status - W: Set Port Enable */
#define | HC_RH_PORT_STATUS_PortSuspendStatus 0x00000004UL /* R: Port Suspend Status - W: Set Port Suspend */
#define | HC_RH_PORT_STATUS_PortOverCurrentIndicator 0x00000008UL /* R: Port OverCurrent Indicator- W: Clear Suspend Status */
#define | HC_RH_PORT_STATUS_PortResetStatus 0x00000010UL /* R: Port Reset Status - W: Set Port Reset */
#define | HC_RH_PORT_STATUS_PortPowerStatus 0x00000100UL /* R: Port Power Status - W: Set Port Power */
#define | HC_RH_PORT_STATUS_LowSpeedDeviceAttached 0x00000200UL /* R: Low Speed Device Attached - W: Clear Port Power */
#define | HC_RH_PORT_STATUS_ConnectStatusChange 0x00010000UL /* Connect Status Change */
#define | HC_RH_PORT_STATUS_PortEnableStatusChange 0x00020000UL /* Port Enable Status Change */
#define | HC_RH_PORT_STATUS_PortSuspendStatusChange 0x00040000UL /* Port Suspend Status Change */
#define | HC_RH_PORT_STATUS_OverCurrentIndicatorChange 0x00080000UL /* OverCurrent Indicator Change */
#define | HC_RH_PORT_STATUS_PortResetStatusChange 0x00100000UL /* Port Reset Status Change */
#define | HC_RH_PORT_STATUS_StatusChangeMask

## Functions
struct st_HC_HCCA | ATTR_ALIGNED (256) HC_HCCA
struct st_HC_ED | ATTR_ALIGNED (16) HC_ED
struct st_HCD_IsoTransferDescriptor | ATTR_ALIGNED (32) HCD_IsoTransferDescriptor
static INLINE HCD_STATUS | OHciHostInit (uint8_t HostID)
static INLINE HCD_STATUS | OHciHostReset (uint8_t HostID)
static INLINE HCD_STATUS | OHciHostOperational (uint8_t HostID)
static INLINE uint32_t | Align16 (uint32_t Value)
static INLINE PHCD_EndpointDescriptor | HcdED (uint8_t idx)
static INLINE PHCD_GeneralTransferDescriptor | HcdGTD (uint8_t idx)
static INLINE PHCD_IsoTransferDescriptor | HcdITD (uint8_t idx)
static INLINE Bool | IsIsoEndpoint (uint8_t EdIdx)
static void | PipehandleCreate (uint32_t *pPipeHandle, uint8_t HostID, uint8_t idx)
static HCD_STATUS | PipehandleParse (uint32_t Pipehandle, uint8_t *HostID, uint8_t *EdIdx)
static INLINE void | BuildPeriodicStaticEdTree (uint8_t HostID)
static INLINE HCD_STATUS | AllocEd (uint8_t DeviceAddr, HCD_USB_SPEED DeviceSpeed, uint8_t EndpointNumber, HCD_TRANSFER_TYPE TransferType, HCD_TRANSFER_DIR TransferDir, uint16_t MaxPacketSize, uint8_t Interval, uint32_t *pEdIdx)
static INLINE HCD_STATUS | AllocGtdForEd (uint8_t EdIdx)
static INLINE HCD_STATUS | AllocItdForEd (uint8_t EdIdx)
static INLINE HCD_STATUS | FreeED (uint8_t EdIdx)
static INLINE HCD_STATUS | FreeGtd (PHCD_GeneralTransferDescriptor pGtd)
static INLINE HCD_STATUS | FreeItd (PHCD_IsoTransferDescriptor pItd)
static INLINE HCD_STATUS | InsertEndpoint (uint8_t HostID, uint32_t EdIdx, uint8_t ListIndex)
static INLINE HCD_STATUS | RemoveEndpoint (uint8_t HostID, uint32_t EdIdx)
static HCD_STATUS | QueueOneGTD (uint32_t EdIdx, uint8_t *const CurrentBufferPointer, uint32_t xferLen, uint8_t DirectionPID, uint8_t DataToggle, uint8_t IOC)
static HCD_STATUS | QueueGTDs (uint32_t EdIdx, uint8_t *dataBuff, uint32_t xferLen, uint8_t Direction)
static HCD_STATUS | WaitForTransferComplete (uint8_t EdIdx)

## Variables
struct st_HC_ED * | PHC_ED
struct st_HC_GTD * | PHC_GTD
struct st_HCD_IsoTransferDescriptor * | PHCD_IsoTransferDescriptor
OHCI_HOST_DATA_T | ohci_data [MAX_USB_CORE]

## Macro Definition Documentation

#define BULK_LIST_HEAD (MAX_STATIC_ED - 1)

Definition at line 90 of file OHCI.h.

#define CONTROL_BULK_SERVICE_RATIO 3 /* Control Bulk transfer ratio 0 = 1:1 - 1 = 2:1 - 2 = 3:1 - 3 = 4:1 */

Definition at line 58 of file OHCI.h.

#define CONTROL_LIST_HEAD (MAX_STATIC_ED - 2)

Definition at line 89 of file OHCI.h.

#define FRAME_INTERVAL 0x2EDF /* Reset default value */

Definition at line 72 of file OHCI.h.

#define FRAMENUMBER_OVERFLOW_INTERRUPT NO

Definition at line 68 of file OHCI.h.

#define HC_COMMAND_STATUS_BulkListFilled 0x00000004UL /* Bulk List Filled */

Definition at line 118 of file OHCI.h.

#define HC_COMMAND_STATUS_ControlListFilled 0x00000002UL /* Control List Filled */

Definition at line 117 of file OHCI.h.

#define HC_COMMAND_STATUS_HostControllerReset 0x00000001UL /* Host Controller Reset */

Definition at line 116 of file OHCI.h.

#define HC_CONTROL_BulkListEnable 0x00000020UL /* Bulk List Enable */

Definition at line 105 of file OHCI.h.

#define HC_CONTROL_ControlBulkServiceRatio 0x00000003UL /* Control/Bulk ratio */

Definition at line 101 of file OHCI.h.

#define HC_CONTROL_ControlListEnable 0x00000010UL /* Control List Enable */

Definition at line 104 of file OHCI.h.

#define HC_CONTROL_HostControllerFunctionalState 0x000000C0UL /* Host Controller Functional State */

Definition at line 106 of file OHCI.h.

#define HC_CONTROL_InterruptRouting 0x00000100UL /* Interrupt Routing */

Definition at line 107 of file OHCI.h.

#define HC_CONTROL_IsochronousEnable 0x00000008UL /* Isochronous Enable */

Definition at line 103 of file OHCI.h.

#define HC_CONTROL_PeriodListEnable 0x00000004UL /* Periodic List Enable */

Definition at line 102 of file OHCI.h.

#define HC_CONTROL_RemoteWakeupConnected 0x00000200UL /* Remote Wakeup Connected */

Definition at line 108 of file OHCI.h.

#define HC_CONTROL_RemoteWakeupEnable 0x00000400UL /* Remote Wakeup Enable */

Definition at line 109 of file OHCI.h.

#define HC_FM_NUMBER 0x0000FFFFUL /* Frame Number */

Definition at line 99 of file OHCI.h.

#define HC_FM_REMAIN 0x00003FFFUL /* Frame remaining */

Definition at line 97 of file OHCI.h.

#define HC_FMINTERVAL_DEFAULT ((((6 * (FRAME_INTERVAL - 210)) / 7) << 16) | FRAME_INTERVAL)

Definition at line 73 of file OHCI.h.

#define HC_HOST_OPERATIONAL 0x00000002UL /* Operational state */

Definition at line 113 of file OHCI.h.

#define HC_HOST_RESET 0x00000000UL /* Reset state */

Definition at line 111 of file OHCI.h.

#define HC_HOST_RESUME 0X00000001UL /* Resume state */

Definition at line 112 of file OHCI.h.

#define HC_HOST_SUSPEND 0x00000003UL /* Suspend state */

Definition at line 114 of file OHCI.h.

#define HC_INTERRUPT_ALL 0xC000007FUL /* All interrupts */

Definition at line 129 of file OHCI.h.

#define HC_INTERRUPT_FrameNumberOverflow 0x00000020UL /* Frame Number Overflow */

Definition at line 125 of file OHCI.h.

#define HC_INTERRUPT_MasterInterruptEnable 0x80000000UL /* Master Interrupt Enable */

Definition at line 128 of file OHCI.h.

#define HC_INTERRUPT_OwnershipChange 0x40000000UL /* Ownership Change */

Definition at line 127 of file OHCI.h.

#define HC_INTERRUPT_ResumeDetected 0x00000008UL /* Resume Detect */

Definition at line 123 of file OHCI.h.

#define HC_INTERRUPT_RootHubStatusChange 0x00000040UL /* Root Hub Status Change */

Definition at line 126 of file OHCI.h.

#define HC_INTERRUPT_SchedulingOverrun 0x00000001UL /* Scheduling Overrun */

Definition at line 120 of file OHCI.h.

#define HC_INTERRUPT_StartofFrame 0x00000004UL /* Start of Frame */

Definition at line 122 of file OHCI.h.

#define HC_INTERRUPT_UnrecoverableError 0x00000010UL /* Unrecoverable error */

Definition at line 124 of file OHCI.h.

#define HC_INTERRUPT_WritebackDoneHead 0x00000002UL /* Writeback DoneHead */

Definition at line 121 of file OHCI.h.

#define HC_REVISION 0x000000FFUL

Definition at line 95 of file OHCI.h.

#define HC_RH_DESCRIPTORA_NoOverCurrentProtection 0x00001000UL /* No OverCurrent Protection */

Definition at line 135 of file OHCI.h.

#define HC_RH_DESCRIPTORA_NoPowerSwitching 0x00000200UL /* No Power Switching */

Definition at line 133 of file OHCI.h.

#define HC_RH_DESCRIPTORA_NumberDownstreamPorts 0x000000FFUL /* Number of downstream ports */

Definition at line 131 of file OHCI.h.

#define HC_RH_DESCRIPTORA_OverCurrentProtectionMode 0x00000800UL /* OverCurrent Protection Mode */

Definition at line 134 of file OHCI.h.

#define HC_RH_DESCRIPTORA_PowerOnToPowerGoodTime 0xFF000000UL /* Power On To Power Good Time */

Definition at line 136 of file OHCI.h.

#define HC_RH_DESCRIPTORA_PowerSwitchingMode 0x00000100UL /* Power Switching Mode */

Definition at line 132 of file OHCI.h.

#define HC_RH_DESCRIPTORB_DeviceRemovable 0x0000FFFFUL /* Device Removable */

Definition at line 139 of file OHCI.h.

#define HC_RH_DESCRIPTORB_PortPowerControlMask 0xFFFF0000UL /* Port Power Control Mask */

Definition at line 138 of file OHCI.h.

#define HC_RH_PORT_STATUS_ConnectStatusChange 0x00010000UL /* Connect Status Change */

Definition at line 153 of file OHCI.h.

#define HC_RH_PORT_STATUS_CurrentConnectStatus 0x00000001UL /* R: Current Connect Status - W: Clear Port Enable */

Definition at line 145 of file OHCI.h.

#define HC_RH_PORT_STATUS_LowSpeedDeviceAttached 0x00000200UL /* R: Low Speed Device Attached - W: Clear Port Power */

Definition at line 151 of file OHCI.h.

#define HC_RH_PORT_STATUS_OverCurrentIndicatorChange 0x00080000UL /* OverCurrent Indicator Change */

Definition at line 156 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortEnableStatusChange 0x00020000UL /* Port Enable Status Change */

Definition at line 154 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortOverCurrentIndicator 0x00000008UL /* R: Port OverCurrent Indicator- W: Clear Suspend Status */

Definition at line 148 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortPowerStatus 0x00000100UL /* R: Port Power Status - W: Set Port Power */

Definition at line 150 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortResetStatus 0x00000010UL /* R: Port Reset Status - W: Set Port Reset */

Definition at line 149 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortResetStatusChange 0x00100000UL /* Port Reset Status Change */

Definition at line 157 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortSuspendStatus 0x00000004UL /* R: Port Suspend Status - W: Set Port Suspend */

Definition at line 147 of file OHCI.h.

#define HC_RH_PORT_STATUS_PortSuspendStatusChange 0x00040000UL /* Port Suspend Status Change */

Definition at line 155 of file OHCI.h.

#define HC_RH_PORT_STATUS_PowerEnableStatus 0x00000002UL /* R: Port Enable Status - W: Set Port Enable */

Definition at line 146 of file OHCI.h.

#define HC_RH_PORT_STATUS_StatusChangeMask

Value:
(HC_RH_PORT_STATUS_ConnectStatusChange | \
HC_RH_PORT_STATUS_PortEnableStatusChange | \
HC_RH_PORT_STATUS_PortSuspendStatusChange | \
HC_RH_PORT_STATUS_OverCurrentIndicatorChange | \
HC_RH_PORT_STATUS_PortResetStatusChange)

Definition at line 158 of file OHCI.h.

#define HC_RH_STATUS_DeviceRemoteWakeupEnable 0x00008000UL /* W: Set Remote Wakeup Enable */

Definition at line 143 of file OHCI.h.

#define HC_RH_STATUS_LocalPowerStatus 0x00000001UL /* R: Local Power Status - W: Clear Global Power */

Definition at line 141 of file OHCI.h.

#define HC_RH_STATUS_LocalPowerStatusChange 0x00010000UL /* R: Local Power Status Change - W: Set Global Power */

Definition at line 142 of file OHCI.h.

#define INTERRUPT_16ms_LIST_HEAD 15

Definition at line 86 of file OHCI.h.

#define INTERRUPT_1ms_LIST_HEAD 0

Definition at line 82 of file OHCI.h.

#define INTERRUPT_2ms_LIST_HEAD 1

Definition at line 83 of file OHCI.h.

#define INTERRUPT_32ms_LIST_HEAD 31

Definition at line 87 of file OHCI.h.

#define INTERRUPT_4ms_LIST_HEAD 3

Definition at line 84 of file OHCI.h.

#define INTERRUPT_8ms_LIST_HEAD 7

Definition at line 85 of file OHCI.h.

#define INTERRUPT_ROUTING 0 /* Host interrupt routing 0 = IRQ - 1 = SMI */

Definition at line 59 of file OHCI.h.

#define ISO_LIST_HEAD (MAX_STATIC_ED - 3)

Definition at line 88 of file OHCI.h.

#define MAX_ED HCD_MAX_ENDPOINT

Definition at line 48 of file OHCI.h.

#define MAX_GTD (MAX_ED + 3)

Definition at line 49 of file OHCI.h.

#define MAX_ITD 0

Definition at line 55 of file OHCI.h.

#define MAX_STATIC_ED 3 /* Serve as list head, fixed, not configurable */

Definition at line 50 of file OHCI.h.

#define OVER_CURRENT_PROTECTION NO

Definition at line 80 of file OHCI.h.

#define OWNERSHIP_CHANGE_INTERRUPT NO

Definition at line 70 of file OHCI.h.

#define PER_PORT_OVER_CURRENT_REPORT NO

Definition at line 79 of file OHCI.h.

#define PER_PORT_POWER_SWITCHING NO

Definition at line 78 of file OHCI.h.

#define PERIODIC_START 0x00002A27UL /* 10% off from FRAME_INTERVAL */

Definition at line 75 of file OHCI.h.

#define PORT_POWER_SWITCHING NO

Definition at line 77 of file OHCI.h.

#define REMOTE_WAKEUP_CONNECTED NO /* Remote wakeup connected */

Definition at line 60 of file OHCI.h.

#define REMOTE_WAKEUP_ENABLE NO /* Remote wakeup enable */

Definition at line 61 of file OHCI.h.

#define RESUME_DETECT_INTERRUPT NO

Definition at line 66 of file OHCI.h.

#define SCHEDULING_OVRERRUN_INTERRUPT NO

Definition at line 63 of file OHCI.h.

#define SOF_INTERRUPT NO

Definition at line 65 of file OHCI.h.

#define TD_MAX_XFER_LENGTH 0x2000

Definition at line 91 of file OHCI.h.

#define TD_NoInterruptOnComplete (7)

Definition at line 93 of file OHCI.h.

#define UNRECOVERABLE_ERROR_INTERRUPT NO

Definition at line 67 of file OHCI.h.

## Function Documentation

static INLINE uint32_t Align16 | ( | uint32_t | Value | ) |
| static

static INLINE HCD_STATUS AllocEd | ( | uint8_t | DeviceAddr,
|  | HCD_USB_SPEED | DeviceSpeed,
|  | uint8_t | EndpointNumber,
|  | HCD_TRANSFER_TYPE | TransferType,
|  | HCD_TRANSFER_DIR | TransferDir,
|  | uint16_t | MaxPacketSize,
|  | uint8_t | Interval,
|  | uint32_t * | pEdIdx
| ) |  |
| static

static INLINE HCD_STATUS AllocGtdForEd | ( | uint8_t | EdIdx | ) |
| static

static INLINE HCD_STATUS AllocItdForEd | ( | uint8_t | EdIdx | ) |
| static

struct st_HC_HCCA ATTR_ALIGNED | ( | 256 |  | ) |

struct st_HC_GTD ATTR_ALIGNED | ( | 16 |  | ) |

struct st_HCD_IsoTransferDescriptor ATTR_ALIGNED | ( | 32 |  | ) |

static INLINE void BuildPeriodicStaticEdTree | ( | uint8_t | HostID | ) |
| static

static INLINE HCD_STATUS FreeED | ( | uint8_t | EdIdx | ) |
| static

static INLINE HCD_STATUS FreeGtd | ( | PHCD_GeneralTransferDescriptor | pGtd | ) |
| static

static INLINE HCD_STATUS FreeItd | ( | PHCD_IsoTransferDescriptor | pItd | ) |
| static

static INLINE PHCD_EndpointDescriptor HcdED | ( | uint8_t | idx | ) |
| static

static INLINE PHCD_GeneralTransferDescriptor HcdGTD | ( | uint8_t | idx | ) |
| static

static INLINE PHCD_IsoTransferDescriptor HcdITD | ( | uint8_t | idx | ) |
| static

static INLINE HCD_STATUS InsertEndpoint | ( | uint8_t | HostID,
|  | uint32_t | EdIdx,
|  | uint8_t | ListIndex
| ) |  |
| static

static INLINE Bool IsIsoEndpoint | ( | uint8_t | EdIdx | ) |
| static

static INLINE HCD_STATUS OHciHostInit | ( | uint8_t | HostID | ) |
| static

static INLINE HCD_STATUS OHciHostOperational | ( | uint8_t | HostID | ) |
| static

static INLINE HCD_STATUS OHciHostReset | ( | uint8_t | HostID | ) |
| static

static void PipehandleCreate | ( | uint32_t * | pPipeHandle,
|  | uint8_t | HostID,
|  | uint8_t | idx
| ) |  |
| static

static HCD_STATUS PipehandleParse | ( | uint32_t | Pipehandle,
|  | uint8_t * | HostID,
|  | uint8_t * | EdIdx
| ) |  |
| static

static HCD_STATUS QueueGTDs | ( | uint32_t | EdIdx,
|  | uint8_t * | dataBuff,
|  | uint32_t | xferLen,
|  | uint8_t | Direction
| ) |  |
| static

static HCD_STATUS QueueOneGTD | ( | uint32_t | EdIdx,
|  | uint8_t *const | CurrentBufferPointer,
|  | uint32_t | xferLen,
|  | uint8_t | DirectionPID,
|  | uint8_t | DataToggle,
|  | uint8_t | IOC
| ) |  |
| static

static INLINE HCD_STATUS RemoveEndpoint | ( | uint8_t | HostID,
|  | uint32_t | EdIdx
| ) |  |
| static

static HCD_STATUS WaitForTransferComplete | ( | uint8_t | EdIdx | ) |
| static

## Variable Documentation

OHCI_HOST_DATA_T ohci_data[MAX_USB_CORE]

struct st_HC_ED * PHC_ED

Definition at line 200 of file OHCI.h.

struct st_HC_GTD * PHC_GTD

Definition at line 238 of file OHCI.h.

struct st_HCD_IsoTransferDescriptor * PHCD_IsoTransferDescriptor

Definition at line 290 of file OHCI.h.