40.8 UDPHS Endpoint Configuration Register
Name: | UDPHS_EPTCFGx |
Offset: | 0x0100 + x*0x20 [x=0..15] |
Reset: | 0x00000000 |
Property: | Read/Write |
Bit | 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | |
EPT_MAPD | |||||||||
Access | R/W | ||||||||
Reset | 0 |
Bit | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | |
Access | |||||||||
Reset |
Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | |
NB_TRANS[1:0] | |||||||||
Access | R/W | R/W | |||||||
Reset | 0 | 0 |
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
BK_NUMBER[1:0] | EPT_TYPE[1:0] | EPT_DIR | EPT_SIZE[2:0] | ||||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 31 – EPT_MAPD Endpoint Mapped (cleared upon USB reset)
Value | Description |
---|---|
0 | The user should reprogram the register with correct values. |
1 | Set by hardware when the endpoint size (EPT_SIZE) and the number of banks (BK_NUMBER) are correct regarding: – The max endpoint size for this endpoint – The number of allowed banks for this endpoint – The number of endpoints/banks already allocated – The FIFO max capacity (FIFO_MAX_SIZE in UDPHS_IPFEATURES register) |
Bits 9:8 – NB_TRANS[1:0] Number Of Transactions per Microframe (cleared upon USB reset)
The number of transactions per microframe is set by software.
Bits 7:6 – BK_NUMBER[1:0] Number of Banks (cleared upon USB reset)
Set this field according to the endpoint’s number of banks (see Endpoint Configuration).
Value | Name | Description |
---|---|---|
0 | 0 | Zero bank, the endpoint is not mapped in memory |
1 | 1 | One bank (bank 0) |
2 | 2 | Double bank (Ping-Pong: bank0/bank1) |
3 | 3 | Triple bank (bank0/bank1/bank2) |
Bits 5:4 – EPT_TYPE[1:0] Endpoint Type (cleared upon USB reset)
Set this field according to the endpoint type (see Endpoint Configuration).
(Endpoint 0 should always be configured as control).
Value | Name | Description |
---|---|---|
0 | CTRL8 | Control endpoint |
1 | ISO | Isochronous endpoint |
2 | BULK | Bulk endpoint |
3 | INT | Interrupt endpoint |
Bit 3 – EPT_DIR Endpoint Direction (cleared upon USB reset)
For Control endpoints this bit has no effect and should be left at zero.
Value | Description |
---|---|
0 | Clear this bit to configure OUT direction for Bulk, Interrupt and Isochronous endpoints. |
1 | Set this bit to configure IN direction for Bulk, Interrupt and Isochronous endpoints. |
Bits 2:0 – EPT_SIZE[2:0] Endpoint Size (cleared upon USB reset)
Set this field according to the endpoint size in bytes (see Endpoint Configuration). Note that 1024 bytes is only for isochronous endpoints.
Value | Name | Description |
---|---|---|
0 | 8 | 8 bytes |
1 | 16 | 16 bytes |
2 | 32 | 32 bytes |
3 | 64 | 64 bytes |
4 | 128 | 128 bytes |
5 | 256 | 256 bytes |
6 | 512 | 512 bytes |
7 | 1024 | 1024 bytes |