BCM5718 Programmer's Guide
Offset
3116
0x08
Receive Standard Producer Ring Consumer
Index
0x0C
Receive Return Ring 2 Producer Index
0x10
Send BD Consumer Index
0x14
Reserved 0x0
Legacy Status Word Format:
•
Bit [0]: Update-Bit
•
Bit [1]: Link Status Change
•
Bit [2]: Error/Attention
•
Bit [3]: Resvd–always 0
•
Bit [4]: Resvd–always 0
•
Bit [5]: Resvd–always 0
•
Bits [31:6]: Reserved 0x0
ISR Flow
The basic flow of an ISR is as follows:
1. Acknowledge interrupt. Write a nonzero value (i.e., value = 1) to interrupt mailbox 0 (see Interrupt Mailbox
0 Register 0x200) for host standard and flat modes, and other Interrupt Mailbox Registers 0x5800-0x40 for
indirect mode, to indicate to the controller that the driver is currently processing the interrupt. This step
temporarily disables further device interrupts.
2. Read and save the value of the status tag field of the status block.
3. Claim the interrupt. Determine if action is required. Read the updated bit of the status word. If the update bit
is asserted then the controller has updated the status block.
4. Clear the update bit of the status word in the status block. This indicates that the host driver either has or
will touch the status block. If a during interrupt event occurs, the host driver can examine the update bit later
to determine if a fresh status block has been moved to host memory space since.
5. Check for Rx traffic indications:
a. Loop through enabled Rx Return Rings (0 to 3).
b. Check for differences between Rx return ring producer indices (status block) and Rx return ring consumer
indices (value written to mailbox on previous call) as this indicates the number of Rx frames to process
from the Rx return ring.
c. Process the Rx packets.
d. Update the Rx return ring consumer indices in each mailbox.
6. Check for Tx completions:
a. Check for differences between previous consumer index (tracked by host driver) and current consumer
index in the status block. These are the Tx BDs which can be made available again to the next send
operation.
Broadcom
®
January 29, 2016 • 5718-PG108-R
Table 88: NetXtreme Legacy Status Block Format (Cont.)
NetXtreme Legacy Interrupt Model
150
Receive Return Ring 1 Producer Index
Receive Return Ring 3 Producer Index
Receive Return Ring 0 Producer Index
Receive Jumbo Producer Ring Consumer Index
Page 230
Need help?
Do you have a question about the NetXtreme/NetLink BCM5718 Series and is the answer not in the manual?
Questions and answers