RM0082
HS_USB 2.0 device
Doc ID 018672 Rev 1
487/844
The CSRs can be grouped in two basic categories:
●
Global CSRs (listed in
), which are specific to the UDC-AHB subsystem.
●
), which are specific to a particular
endpoint within the UDC-AHB subsystem. Specifically, each endpoint supported by the
UDC-AHB subsystem is associated to a set of specific 32 bit CSRs for each direction
(in/out).
As explained by the memory map in
, these CSRs are mapped in the 0x0000 to
0x04FC offset address space (with respect to the base address above). Apart from these
device-level CSRs, the UDC itself contains other specific CSRs which are mapped in the
0x0500 to 0x07FC offset address space.
Moreover, the FIFOs are mapped at base address 0xE100_0800. Offset addresses from
0x0800 up to a 0x1800 host the data in the RxFIFO (
Receive FIFO controller on page 466
which are followed by the memory space allocated to TxFIFOs.
Table 396.
In endpoint-specific CSRs summary
Endpoint
Name
Offset
Type
Reset value
0
Control
0x0000
RW
32’h0
Status
0x0004
RO
32’h0
Buffer size
0x0008
RW
32’h0
Maximum packet size
0x000C
RW
32’h0
Reserved
0x0010
-
-
Data description pointer
0x0014
RW
32’h0
Reserved
0x0018
-
-
Write confirmation
0x001C
RW
-
1
As Endpoint 0
0x0020 - 0x003C
As Endpoint 0
Reserved
0x0040 - 0x005C
3
As Endpoint 0
0x0060 - 0x007C
As Endpoint 0
Reserved
0x0080 - 0x009C
5
As Endpoint 0
0x00A0 - 0x00BC
As Endpoint 0
Reserved
0x00C0 - 0x00DC
7
As Endpoint 0
0x00E0 - 0x00FC
As Endpoint 0
Reserved
0x0100 - 0x011C
9
As Endpoint 0
0x0120 - 0x013C
As Endpoint 0
Reserved
0x0140 - 0x015C
11
As Endpoint 0
0x0160 - 0x017C
As Endpoint 0
0x0180 - 0x019C
13
As Endpoint 0
0x01A0 - 0x01BC
As Endpoint 0
0x01C0 - 0x01DC
15
As Endpoint 0
0x01E0 - 0x01FC
As Endpoint 0