Jumbo Frames
BCM5718 Programmer’s Guide
Broadcom
®
January 29, 2016 • 5718-PG108-R
Page 120
• The Opaque Data field is reserved for the driver and any data placed here is passed opaquely by the driver
from the receive buffer descriptor in the standard or jumbo receive ring to one of the receive return rings.
Receive Jumbo Producer Ring
The jumbo RBD producer ring is reintroduced in the BCM5718 family to support RX jumbo frames. The jumbo
RBD producer ring is structured the same as the standard RBD producer ring, but the primary difference is that
only extended BDs are permitted to be posted in the jumbo RBD producer ring. The jumbo RBD producer ring
has a unique RCB associated with it.
The jumbo ring is managed by a producer index and a consumer index as in the case with the standard producer
ring. Whenever host software adds more BDs to the jumbo producer ring, it writes the updated producer index
to the controller via a high-priority mailbox located at the PCIE address range 0x208–0x20F. The producer index
register is at 0x3008.
The controller keeps a local copy of the jumbo ring consumer index in register 0x2470. The jumbo ring consumer
index is also reported to the host via the status block. See
“Send Buffer Descriptor” on page 122
Table 32: Receive BD Flags
Bit #
Flag Name
Flag Description
0
Reserved
–
1
Reserved
–
2
BD_FLAG_END
The frame ends at the end of the data in this buffer descriptor.
3
RSS_HASH_VALID
If this bit is 1, then the RSS_HASH_TYPE field is valid. Else
the RSS_HASH_TYPE field is meaningless and must be
ignored for this frame.
4
Reserved
–
5
BD_FLAG_JUMBO_RING
Indicates that this packet came from the Jumbo Receive
Ring, not the Standard Receive Ring (For receive BDs only).
This must be set by the driver, it is just copied through
opaquely by the controller firmware.
6
BD_FLAG_VLAN_TAG
The frame associated with this buffer descriptor has an
802.1Q VLAN tag associated with it.
7:8
RSS_HASH_TYPE
Hash type of the receive packet. It indicates which hash_type
was used on the receive packet if multiple hash types are
defined.
9
Reserved
–
10
BD_FLAG_FRAME_HAS_ERROR
An error was detected by the controller. The detected error
type is set in the Error_Flag word of the receive buffer
descriptor.
11
– –
12
IP_CHECKSUM
Indicates that the IP Checksum field is valid.
13
TCP_UDP_CHECKSUM
Indicates that the TCP_UDP Checksum field is valid.
14
TCP_UDP_IS_TCP
Indicates that this frame has a TCP packet in it.
15
IPV6_PACKET
Indicates that this frame has an IPv6 packet in it.