DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10316_0
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 00.06 — 17 December 2008
158 of 571
NXP Semiconductors
UM10316
Chapter 13: LPC29xx USB device
Note that the AHB slave clock is always enabled as long as the PCUSB bit of PCONP is
set. When the device controller is not in use, all of the device controller clocks may be
disabled by clearing PCUSB.
The USB_NEED_CLK signal is used to facilitate going into and waking up from chip
Power-down mode. USB_NEED_CLK is asserted if any of the bits of the USBClkSt
register are asserted.
After entering the suspend state with DEV_CLK_EN and AHB_CLK_EN cleared, the
DEV_CLK_ON and AHB_CLK_ON will be cleared when the corresponding clock turns off.
When both bits are zero, USB_NEED_CLK will be low, indicating that the chip can be put
into Power-down mode by writing to the PCON register. The status of USB_NEED_CLK
can be read from the USBIntSt register.
Any bus activity in the suspend state will cause the USB_NEED_CLK signal to be
asserted. When the USB is configured to be a wakeup source from Power-down
(USBWAKE bit set in the INTWAKE register), the assertion of USB_NEED_CLK causes
the chip to wake up from Power-down mode.
8.4 Remote wake-up
The USB device controller supports software initiated remote wake-up. Remote wake-up
involves resume signaling on the USB bus initiated from the device. This is done by
clearing the SUS bit in the SIE Set Device Status register. Before writing into the register,
all the clocks to the device controller have to be enabled using the USBClkCtrl register.
9.
Register description
shows the USB Device Controller registers directly accessible by the CPU.
The Serial Interface Engine (SIE) has other registers that are indirectly accessible via the
SIE command registers. See
Section 13–11 “Serial interface engine command
for more info.
Table 117. USB device register map
Name
Description
Access
Reset value
Address
Clock control registers
USBClkCtrl
USB Clock Control
R/W
0x0000 0000
0xE010 CFF4
USBClkSt
USB Clock Status
RO
0x0000 0000
0xE010 CFF8
Device interrupt registers
USBIntSt
USB Interrupt Status R/W
0x8000 0000
<tbd>
USBDevIntSt
USB Device Interrupt Status
RO
0x0000 0010
0xE010 C200
USBDevIntEn
USB Device Interrupt Enable
R/W
0x0000 0000
0xE010 C204
USBDevIntClr
USB Device Interrupt Clear
WO
0x0000 0000
0xE010 C208
USBDevIntSet
USB Device Interrupt Set
WO
0x0000 0000
0xE010 C20C
USBDevIntPri
USB Device Interrupt Priority
WO
0x00
0xE010 C22C
Endpoint interrupt registers
USBEpIntSt
USB Endpoint Interrupt Status
RO
0x0000 0000
0xE010 C230
USBEpIntEn
USB Endpoint Interrupt Enable
R/W
0x0000 0000
0xE010 C234
USBEpIntClr
USB Endpoint Interrupt Clear
WO
0x0000 0000
0xE010 C238