EasyManua.ls Logo

Broadcom BCM5722 - Ring Control Blocks; Send Rings; Table 10: Ring Control Block Format; Table 11: Flag Fields for a Ring

Broadcom BCM5722
593 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Programmer’s Guide BCM5722
10/15/07
Broadcom Corporation
Document 5722-PG101-R Descriptor Rings Page 44
RING CONTROL BLOCKS
Each ring (send or receive) has a Ring Control Block (RCB) associated with it. Each RCB has the format shown in Table 10.
The fields are defined as follows:
The Host Ring Address field contains the 64-bit host address of the first element in the ring. Basically, this field tells the
controller precisely where in host memory the ring is located. This field only applies to rings that are located in host
memory. The Host_Ring_Address field contains the 64-bit address, in big-endian ordering, of the first Send BD in host
memory.
The Flags field contains bits flags that contain control information about a given ring. The following table shows the two
flags that are defined.
The Max_len field has a different meaning for different types of rings.
- This field indicates the number elements in the ring.
- The valid values for this field are 32, 64, 128, 256, and 512.
The NIC Ring Address field contains the address where the BD cache is located in the internal NIC address space. This
address is only valid for Receive Producer Rings. The Send Rings and Receive Return Rings do not require this field to
be populated. The location within the NIC address map for Receive Producer Ring is provided in “Memory Maps and
Pool Configuration” on page 101.
SEND RINGS
The BCM5755, BCM5755M, BCM5787, BCM5787M, BCM5906, BCM5906M, BCM5754, and BCM5754M devices support
only one host based Send Ring.
The Send Ring Producer Index is incremented by host software to add descriptors to the Send Ring (see Figure 22
on page 45). By adding descriptors to the ring, the device is instructed to transmit packets that are composed of the buffers
pointed to by the descriptors. A single transmit packet may be composed of multiple buffers that are pointed to by multiple
send descriptors. The maximum number of send descriptors for a single packet is (0.75)*(ring size).
Table 10: Ring Control Block Format
Offset (bytes) 31 16 15 0
0x00 Host Ring Address
0x04
0x08 Max_len Flags
0x0c Reserved
Table 11: Flag Fields for a Ring
Bits Name Description
0 RCB_FLAG_USE_EXT_RECV_BD This bit should be used only for Receive Jumbo Rings. This bit indicates
that the ring will use extended receive buffer descriptors (see “Send Buffer
Descriptors” on page 46).
Note: Jumbo frames are not supported by BCM5755, BCM5755M,
BCM5787, BCM5787M, BCM5906, BCM5906M, BCM5754, or
BCM5754M.
1 RCB_FLAG_RING_DISABLED Indicates that the ring is not in use.
15:2 Reserved Should be set to 0.

Table of Contents