
Interrupt Services
MOTOROLA
USB Device Module
21-7
FRAME_MATCH—Match detected in USB_FRAME register. This interrupt asserts when the
frame number programmed into the MATCH field of the USB_FRAME register is the same as the
FRAME field of the USB_FRAME register.
CFG_CHG—Host changed USB device configuration. This interrupt indicates that the USB host
selected a different configuration or alternate interface. Software should read the USB_STAT
register to determine the current configuration and interface, and then reconfigure itself accordingly.
21.5.2 Endpoint Interrupts
The endpoint interrupts indicate requests for service by specific USB endpoints. All bits are maskable.
Each endpoint’s interrupt output is connected to a separate hardware interrupt line. When an event occurs
that causes an interrupt condition to occur, and the corresponding bit in the interrupt mask register is 0, an
interrupt signal will assert on the module’s interface. Writing a 1 to the associated bit in the interrupt
register clears the interrupt.
FIFO_FULL—This interrupt asserts when the FIFO is full.
FIFO_EMPTY—This interrupt asserts when the FIFO is empty.
FIFO_ERROR—This interrupt indicates that some abnormal condition occurred in the FIFO. The
cause of the error can be verified by reading the USB_EPn_FSTAT register associated with the
FIFO that had the error.
FIFO_HIGH—Each FIFO has an alarm register. This interrupt asserts if the byte count in the FIFO
is above the level specified by the alarm register.
FIFO_LOW—Each FIFO has an alarm register. This interrupt asserts if the byte count in the FIFO
is below the level specified by the alarm register.
EOT—End of Transfer. This interrupt asserts after the last data byte of a USB transfer crosses from
the USB device into the UDC module or vice versa. The end of a USB transfer is indicated by either
a zero byte packet or by a data packet shorter than the maximum packet size for the endpoint.
NOTE:
The EOT is never asserted at the same time as the DEVREQ interrupt for
setup packets. The EOT interrupt asserts after every interrupt packet
transfer, complete bulk data transfer, and data phase of control transfer.
The EOT interrupt will generally assert along with an EOF interrupt,
although an EOT interrupt without an EOF interrupt is possible if a transfer
terminated on a USB packet boundary.
DEVREQ—Device Request (Setup Packet). This interrupt indicates that the most recently received
packet was a setup or device request packet. Software on the USB device must decode and respond
to the packet in order to complete a Vendor, Class, or Standard request. This interrupt will only
assert for the control endpoint.
MDEVREQ—Multiple Device Request. This interrupt asserts when two or more setup packets
have been received before the DEVREQ interrupt was cleared. This interrupt is used to determine
when the USB host aborted a transfer in progress. In this case, the device receives a setup packet,
followed by a new setup packet before it completed processing the original command. This interrupt
only asserts for the control endpoint.
EOF—End of Frame. This interrupt indicates that an end of frame marker was sent or received on
the FIFO/UDC interface. This interrupt asserts if a DEVREQ is received. This interrupt asserts for
bulk, control, and interrupt data.
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
..
.