Owner's manual

Table Of Contents
DS785UM1 11-11
Copyright 2007 Cirrus Logic
Universal Serial Bus Host Controller
EP93xx User’s Guide
1
1
1
1
11.3 Registers
The Host Controller (HC) contains a set of on-chip operational registers that are used by the
Host Controller Driver (HCD). According to the function of these registers, they are divided
into four partitions, specifically for Control and Status, Memory Pointer, Frame Counter and
Root Hub. All of the registers should be read and written as Dwords. The memory map is
shown in Table 11-2.
Note: In Table 11-2, “*” marks registers in address space 0x8002_0080 - 0x8002_0084 that
are not OHCI implementation-specific. This address space is reserved for test software
use.
Note: Important - Before setting up any of the Host controller registers it is necessary to set the
USH_EN bit (bit 28 of the PwrCnt register).
Table 11-2. OpenHCI Register Addresses
Address Register Name
0x8002_0000 HcRevision
0x8002_0004 HcControl
0x8002_0008 HcCommandStatus
0x8002_000C HcInterruptStatus
0x8002_0010 HcInterruptEnable
0x8002_0014 HcInterruptDisable
0x8002_0018 HcHCCA
0x8002_001C HcPeriodCurrentED
0x8002_0020 HcControlHeadED
0x8002_0024 HcControlCurrentED
0x8002_0028 HcBulkHeadED
0x8002_002C HcBulkCurrentED
0x8002_0030 HcDoneHead
0x8002_0034 HcFmInterval
0x8002_0038 HcFmRemaining
0x8002_003C HcFmNumber
0x8002_0040 HcPeriodicStart
0x8002_0044 HcLSThreshold
0x8002_0048 HcRhDescriptorA
0x8002_004C HcRhDescriptorB
0x8002_0050 HcRhStatus
0x8002_0054 HcRhPortStatus[1]
0x8002_0058 HcRhPortStatus[2]
0x8002_005C HcRhPortStatus[3]
0x8002_0080 USBCfgCtrl *
0x8002_0084 USBHCISts *