BCM5722 Programmer’s Guide
10/15/07
Broadcom Corporation
Page 75 Send Rings Document 5722-PG101-R
Figure 30 illustrates the relationships between all the components of a send ring.
Figure 30: Relationships Between All Components of a Send Ring
RING CONTROL BLOCK
The Send Ring RCB contains a pointer to the first Send BD in the device and host memory, number of send BDs in the ring,
and control flags (see “Send Rings” on page 74 for a full discussion of the send RCB). All the fields are in big-endian ordering
as required by the BCM5722 Ethernet controller. The RCBs of the send rings are located in the device Miscellaneous
Memory Region at offset 0x0100.
The devices support a host based send ring. The Send BDs of the host based Send Ring will be bus-mastered from host
memory into device local memory. The device driver will program the BDs directly in its memory space and avoid
programmed I/O to the MAC. The Max_Len field in the RCB (see Figure 31) indicates the maximum number of BDs in the
Send Ring. This field can be programmed to either 32, 64, 128, 256, or 512.
Figure 31: Max_Len Field in Ring Control Block
Send BD 1
Send BD 2
Send BD 3
Send BD 4
Buffer
Buffer
Buffer
Send
RCB
Send BD 5
Send BD 7
Send BD 8Consumer
Producer
...
Send BD 6
Send BD 512
Offset 32 16 15 0
Host Ring Address
0x00
0x04
Flags0x08
0x0C NIC Ring Address
Max_Len
Host Send Ring Control Block
1st
1st Ring Element 512th Ring Element