EasyManuals Logo

Broadcom NetXtreme/NetLink BCM5718 Series User Manual

Broadcom NetXtreme/NetLink BCM5718 Series
593 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #82 background imageLoading...
Page #82 background image
Status BlockBCM5718 Programmer’s Guide
Broadcom®
January 29, 2016 5718-PG108-R Page 82
Rx Prod Jumbo: 1024
Tx Prod: 512
As a maximum use example, there can be an IOV implementation with the following total max ring size/count
arrangement:
16 Send rings (size=512 each ring)
16 Rx Prod rings (size=2048 each ring)
16 Rx Prod jumbo rings (size=1024 each ring)
17 Rx Ret rings (size=4096 each ring)
Status Block
The Status Block is another shared memory data structure that is located in host memory. The Status Block is
32 bytes in length. Host software will need to allocate 32 bytes of non-paged memory space for the Status Block
and set the Status Block Host Address register to point to the host memory physical address reserved for this
structure.
The controller will update the Status Block to host memory prior to a host coalescing interrupt or MSI. The
frequency of these Status Block updates is determined by the host coalescing logic (see “Host Coalescing
Engine” on page 60). Using the software configurable coalescing parameters, the device driver can optimize the
frequency of status block updates for a particular application or operating system.
The Status Block contains some of the Producer and Consumer indices for the rings described in “Descriptor
Rings” on page 69. These Producer and Consumer indices allow host software to know what the current status
of the controller is regarding its processing of the various send and receive rings. From information in the status
block a software driver can determine:
Whether the Status Block has been recently updated (via a bit in the status word).
Whether the Link State has changed (via a bit in the status word).
Whether the controller has recently received a packet and deposited that packet into host memory for a
given ring (via the Receive Return Ring Producer Indices).
Which host receive descriptors that controller has fetched, and it will consume when future packets are
received (via the Receive Producer Ring Consumer Indices).
Whether the controller has recently completed a transmit descriptor buffer DMA for a given ring (via the
Send Ring Consumer Indices).
Status Block Format
Each MSI-X vector is associated with a status-block structure. A status block is DMAed to the host memory
immediately prior to raising a legacy style interrupt (INTx, MSI) or MSI-X interrupt. Status block formats vary
depending on RSS and the MSI-X vector number.
Note: Reference registers 0x3C500x3CC0 for debug access to the various ring indices.

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Broadcom NetXtreme/NetLink BCM5718 Series and is the answer not in the manual?

Broadcom NetXtreme/NetLink BCM5718 Series Specifications

General IconGeneral
BrandBroadcom
ModelNetXtreme/NetLink BCM5718 Series
CategoryController
LanguageEnglish

Related product manuals