Intel® IXP400 Software

Access-Layer Components: Ethernet Access (IxEthAcc) API

Rx FIFO No Priority

Received frames from all NPEs are multiplexed onto one queue manager queue. The IxEthAcc component will de-multiplex the received frames and call the associated user level callback

 

Codelet or client application

1. Initializations , Callback

9. Client must free buffers,

Registration...

replenish PortRxFree

 

 

queues

2. PortRxFreeReplenish (Port 0)

 

 

PortRxFreeReplenish (Port 1)

 

 

PortRxFreeReplenish (Port 2)

 

 

 

8.

RxCallback (Port 0)

3. PortEnable (Port 0)

 

RxCallback (Port 1)

 

RxCallback (Port 2)

PortEnable (Port 1)

 

 

 

PortEnable (Port 2)

 

 

 

 

IxEthAcc

4. IxEthAcc will

 

store extra ixp_buf

7. IxEthAcc dispatches

pointers if IxQMgr

port specific callback

port-specific free

functions, passes

queues are full.

ixp_buf pointers

FreeEnet0

FreeEnet1

FreeEnet2

6.IxQmgr dispatches IxEthAcc callback function, passes ixp_buf pointers. If Receive QoS mode, IxEthAcc will place pointers in appropriate Traffic Class queues.

RxEnet

IxQMgr

Optional Priority Queues

5. NPE’s receive frames,

Incoming Ethernet Frames

onto RxEnet queue, or

write receive traffic data,

 

muxes ixp_buf pointer

 

multiple RxEnet priority

NPEs

queues, if Receive QoS

mode is enabled.

 

B2366-04

function registered via IxEthAccRxCallbackRegister(). The frames placed in the IxQMgr queue have already been validated to have a correct FCS. They are also free from all other types of MAC/ PHY-related errors, including alignment errors and “frame too long” errors. Note that the receive callback is issued in frame-receive order. No receive priority mechanisms are provided. Errored frames (FCS errors, size overrun) are not passed to the user.

April 2005

IXP400 Software Version 2.0

Programmer’s Guide

140

Document Number: 252539, Revision: 007

 

Page 140
Image 140
Intel IXP400 manual Programmer’s Guide, Codelet or client application