BCM5718 Programmer's Guide
MSI-X Plumbing
The basic interrupt/ISR model for NetXtreme controllers remains largely unchanged even with the introduction
of vectored interrupts in the form of MSI-X. However, there are four basic design changes:
•
Replication of status blocks, mailboxes, etc. This essentially scales the legacy model from one vector to
five or 17 vectors.
•
Implement MSI-X capability structures in PCIe configuration space.
•
Implement PCI-mandated MSI-X data structures within each MAC core, including new base address
register (BAR) decoder, MSI-X table, pending bit array (PBA) structure, etc.
•
Add per Rx queue host coalescing attributes.
Each item is discussed in detail in the following sections.
Replication of Status Blocks and INT Mailboxes
As shown in
Table
91, all four Rx Return Consumer Indices are indicated in the legacy Status Block. When MSI-
X Multivector RSS mode is enabled, it leads to logically five interrupt vectors. Each of these vectors is bound to
its own status block; thus, there are five different status blocks, numbered Status-Block0 through Status-Block4.
Each of these five vectors is also bound to its own INT Mail-Box registers.
Each Status Block has a fixed location in the Host Memory. Hence, there are five Status Block Host Address
Registers (64-bit).
Table 91
Similarly, in case of MSI-X Multivector IOV mode, there are 17 sets of Status Blocks and MailBox registers.
Status
Status
Block Host
INT Mail
Block
Address
Box
Numbe
Register
Register
r
(64-bit)
Address Indication Items
Legacy 0x3C3C,
0x200 (*) ALL
0x3C38
Broadcom
®
January 29, 2016 • 5718-PG108-R
shows all five Status-Block Host Address Registers and INT Mail-Box Registers.
Table 91: MIS-X Status-Block and Mail Box Addresses
IOV Mode
RSS Mode
INT Mail
Box
Register
Address Indication Items
0x200(*) ALL
MSI-X Plumbing
Comments
Legacy Status Block.
Used by INTx or MSI.
Also used in MSI-X
Single-Vector RSS
mode or IOV mode
Page 244
Need help?
Do you have a question about the NetXtreme/NetLink BCM5718 Series and is the answer not in the manual?
Questions and answers