Jumbo Frames
BCM5718 Programmer’s Guide
Broadcom
®
January 29, 2016 • 5718-PG108-R
Page 118
Figure 23: Extended RX Buffer Descriptor
• The Host Address 0 field contains the address of the first buffer in host memory. The host address is in host
address format (64-bit).
• The Host Address N field in the Extended Receive Buffer Descriptor contains the address of the Nth piece
of the buffer in host memory.
• The Index field is used by the host to keep track of the position of the returned buffer descriptor. This field is
passed through opaquely by the controller.
• The Len 0 field is initially set by the host and specifies the length of the first buffer available for receiving
data; this length field is set to the length of the data pointed to by Host Address 0. When an extended BD is
returned to the receive return ring, the Len 0 field is set to the entire length of the data associated with the
buffer descriptor, which is so because the receive return ring contains only a single length field. All BDs
posted to the return ring by the controller are of size 32 bytes, whereas extended receive BDs posted to the
jumbo producer ring by the driver are of size 64 bytes.
Note:
In the case of an extended BD, the host is permitted to make Len 0 > 4 KB and practically even
beyond 9.6 KB, such that an entire jumbo frame could be held in a single buffer. In such a scenario,
hardware attempts to post an entire jumbo frame in a single buffer designated by Len 0.
Note:
Len 0 is not permitted to be 0. Len1, Len2, or Len 3 may be set to 0, but hardware ignores Len2
and Len3 when Len1 = 0. Similarly, hardware ignores Len4 when Len3 = 0.
0x4
0x8
0xC
0x10
Host Address 1
Host Address 2
Host Address 3
Host Address 0
0x14
0x18
0x28
0x24
0x20
0x1C
0x3C
0x38
0x34
0x30
0x0
Len 1
Resvd
Len 3
Len 2
Len 0
0x2C
Index
Type
Flags
IP Checksum
TCP / UDP Checksum
Error Flags
VLAN Tag
RSS Hash
Opaque Data Area
31
15
0