0x00
),---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| p |evt| cs| ce|bsa|bra|brp|sfp| m | addr |
'---------------------------------------------------------------'
p
: Enables DP pull-upevt
: Event pendingcs
: Control Endpoint Lockout - State [Read Only]ce
: Control Endpoint Lockout - Enablebsa
: Bus Suspend Assertedbra
: Bus Reset Assertedbrp
: Bus Reset Pendingsfp
: Start-of-Frame Pendingm
: Enable address matchingaddr
: Configure address matching0x01
),---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| rsvd | cr| / |brc|sfc| / |
'---------------------------------------------------------------'
cr
: Control Endpoint Lockout - Releasebrc
: Bus Reset Clearsfc
: Start-of-Frame Clear0x02
)This contains info about the generated events from the transaction microcode.
It can either contain info about the last event only along with a count of events since last read, or it can be a FIFO depending on the core configuration.
Count mode (EVENT_DEPTH = 0/1
) :
,---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| cnt | event |
'---------------------------------------------------------------'
cnt
: Counter of events since last readevent
: Last recorded event data (see below)FIFO mode (EVENT_DEPTH > 1
) :
,---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| v | o | rsvd | event |
'---------------------------------------------------------------'
v
: Valid (i.e. FIFO is not empty and event
is valid)o
: FIFO Overflowevent
: event data (see below)Event format:
,-----------------------------------------------,
| b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------------------------------------|
| ucnc | endp | d | s | b | / |
'-----------------------------------------------'
ucnc
: Notification codeendp
: Endpoint #d
: Direction (1=IN, 0=OUT/SETUP)s
: Is SETUP ?b
: Buffer Descriptor index,-----------------------------------------------,
| b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------------------------------------|
| 1 0 0 0 | ep_num |dir| 0 0 0 |
'-----------------------------------------------'
,---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| | t | b | bdm | | EP type |
'---------------------------------------------------------------'
t
: Data Toggle (if relevant for EP type)b
: Buffer Descriptor index00
- Single Buffer (index 0 only)01
- Double Buffer10
- Special Control EP mode (index 0=data, 1=setup)h
indicates if this EP is halted)
000
: Non-existant001
: Isochronous01h
: Interrupt10h
: Bulk11h
: Control,-----------------------------------------------,
| b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|-----------------------------------------------|
| 1 0 0 0 | ep_num |dir| 1 | i | w |
'-----------------------------------------------'
i
: BD Index (0/1)w
: Word select,---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| state | s | rsvd | Buffer Length |
'---------------------------------------------------------------'
s
: Transactions was setup000
: Empty / Unused010
: Valid, ready for Tx/RX data011
: Valid, issue STALL (and drop data)100
: Used - Success1xx
: Used - Error with xx=01/10/11 error code,---------------------------------------------------------------,
| f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---------------------------------------------------------------|
| (rsvd) | Buffer Pointer |
'---------------------------------------------------------------'