5 receive buffer queue pointer register – Rainbow Electronics AT91CAP9S250A User Manual

Page 814

Advertising
background image

814

6264A–CAP–21-May-07

AT91CAP9S500A/AT91CAP9S250A

42.5.5

Receive Buffer Queue Pointer Register

Register Name:

EMAC_RBQP

Access Type:

Read/Write

This register points to the entry in the receive buffer queue (descriptor list) currently being used. It is written with the start
location of the receive buffer descriptor list. The lower order bits increment as buffers are used up and wrap to their original
values after either 1024 buffers or when the wrap bit of the entry is set.

Reading this register returns the location of the descriptor currently being accessed. This value increments as buffers are
used. Software should not use this register for determining where to remove received frames from the queue as it con-
stantly changes as new frames are received. Software should instead work its way through the buffer descriptor queue
checking the used bits.

Receive buffer writes also comprise bursts of two words and, as with transmit buffer reads, it is recommended that bit 2 is
always written with zero to prevent a burst crossing a 1K boundary, in violation of section 3.6 of the AMBA specification.

• ADDR: Receive buffer queue pointer address

Written with the address of the start of the receive queue, reads as a pointer to the current buffer being used.

31

30

29

28

27

26

25

24

ADDR

23

22

21

20

19

18

17

16

ADDR

15

14

13

12

11

10

9

8

ADDR

7

6

5

4

3

2

1

0

ADDR

Advertising