Intel® IXP400 Software

Access-Layer Components: HSS-Access (IxHssAcc) API

UINT8 *rxCircular — A pointer to the Rx data pool allocated by the client as described in previous section. It points to a set of circular buffers to be filled by the received data. This address will be written to by the NPE and must be a physical address.

unsigned numRxBytesPerTS — The length of each Rx circular buffer in the Rx data pool. The buffers need to be deep enough for data to be read by the client before the NPE re-writes over that memory.

UINT32 *txPtrList — The address of an area of contiguous memory allocated by the client to be populated with pointers to data for transmission. Each pointer list contains a pointer per active channel. The txPtrs will point to data to be transmitted by the NPE. Therefore, they must point to physical addresses.

unsigned numTxPtrLists — The number of pointer lists in txPtrList. This number is dependent on jitter.

unsigned numTxBytesPerBlk — The size of the Tx data, in bytes, that each pointer within the PtrList points to.

IxHssAccChanRxCallback rxCallback — A client function pointer to be called back to handle the actual tx/rx of channelized data after bytesPerTSTrigger bytes have been received for all trunk time slots. If this pointer is NULL, it implies that the client will use a polling mechanism to detect when the tx and rx of channelized data is to occur.

After the client application is connected with the channelized service, the HSS component then can be enabled by calling ixHssAccChanPortEnable() with the port ID provided to enable the channelized service from that particular HSS port.

The following figure shows what is done in IxHssAcc when the ixHssAccChanPortConnect() and ixHssAccChanPortEnable() functions are called.

April 2005

IXP400 Software Version 2.0

Programmer’s Guide

200

Document Number: 252539, Revision: 007

 

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