Intel® IXP400 Software

Access-Layer Components: Queue Manager (IxQMgr) API

Set the callback type for the HSS queue to periodic and the Eth Rx queue to sporadic using the ixQMgrCallbackTypeSet() function.

Note: All other queues (Tx queues, RxFree queues and TxDone queues) will have the callback type set to the default callback type of IX_QMGR_TYPE_REALTIME_OTHER.

Start the dispatcher by calling the ixQMgrDispatcherLoop function.

On completion of the periodic task, make a call to the ixQMgrPeriodicDone() function to enable the sporadic task.

18.11Threading

The IxQMgr does not perform any locking on accesses to the IxQMgr registers and queues. If multiple threads access the IxQMgr, the following IxQMgr functions need to be protected by locking during concurrent access to the same queue:

ixQMgrQWrite()

ixQMgQRead()

ixQMgrQReadWithChecks()

ixQMgrQWriteWithChecks()

ixMgrQBurstRead()

ixQMgrQBurstWrite()

ixQMgrQReadMWordsMinus1()

ixQMgrQPeek()

ixQMgrQPoke()

ixQMgrQNotificationtEnable()

ixQMgrQNotificationDisable()

ixQMgrQStatusGet()

ixQMgrQWatermarkSet()

ixQMgrDispatcherLoopRunA0/B0/B0LLP()()

All IxQMgr functions can be called from any thread, with the exception of ixQMgrInit(), which should be called only once — before any other call.

18.12Dependencies

The IxQMgr component is dependent on the OSAL and Feature Control components. IxQMgr uses OSAL to register AQM ISRs. IxQMgr also uses IxFeatureCtrl to determine the processor type and stepping to select which dispatchers may be supported.

April 2005

IXP400 Software Version 2.0

Programmer’s Guide

274

Document Number: 252539, Revision: 007

 

Page 274
Image 274
Intel IXP400 manual Document Number 252539, Revision